File tree Expand file tree Collapse file tree 1 file changed +20
-3
lines changed Expand file tree Collapse file tree 1 file changed +20
-3
lines changed Original file line number Diff line number Diff line change @@ -367,9 +367,16 @@ $.extend($.effects, {
367
367
border : 'none' ,
368
368
margin : 0 ,
369
369
padding : 0
370
- } ) ;
370
+ } ) ,
371
+ active = document . activeElement ;
371
372
372
373
element . wrap ( wrapper ) ;
374
+
375
+ // Fixes #7595 - Elements lose focus when wrapped.
376
+ if ( element [ 0 ] === active || $ . contains ( element [ 0 ] , active ) ) {
377
+ $ ( active ) . focus ( ) ;
378
+ }
379
+
373
380
wrapper = element . parent ( ) ; //Hotfix for jQuery 1.4 since some change in wrap() seems to actually loose the reference to the wrapped element
374
381
375
382
// transfer positioning properties to the wrapper
@@ -394,8 +401,18 @@ $.extend($.effects, {
394
401
} ,
395
402
396
403
removeWrapper : function ( element ) {
397
- if ( element . parent ( ) . is ( '.ui-effects-wrapper' ) )
398
- return element . parent ( ) . replaceWith ( element ) ;
404
+ var parent ,
405
+ active = document . activeElement ;
406
+
407
+ if ( element . parent ( ) . is ( '.ui-effects-wrapper' ) ) {
408
+ parent = element . parent ( ) . replaceWith ( element ) ;
409
+ // Fixes #7595 - Elements lose focus when wrapped.
410
+ if ( element [ 0 ] === active || $ . contains ( element [ 0 ] , active ) ) {
411
+ $ ( active ) . focus ( ) ;
412
+ }
413
+ return parent ;
414
+ }
415
+
399
416
return element ;
400
417
} ,
401
418
You can’t perform that action at this time.
0 commit comments