]> scripts.mit.edu Git - autoinstalls/wordpress.git/blobdiff - wp-includes/js/admin-bar.js
WordPress 4.4
[autoinstalls/wordpress.git] / wp-includes / js / admin-bar.js
index c028db9d64849bbe844c4b524329d29f67f84c31..10d2954781f708a5be7f8b694e49d7055bbcf94e 100644 (file)
@@ -28,6 +28,12 @@ if ( typeof(jQuery) != 'undefined' ) {
                                        e.stopPropagation();
                                        e.preventDefault();
                                        el.addClass('hover');
+                               } else if ( ! $( e.target ).closest( 'div' ).hasClass( 'ab-sub-wrapper' ) ) {
+                                       // We're dealing with an already-touch-opened menu genericon (we know el.hasClass('hover')),
+                                       // so close it on a second tap and prevent propag and defaults. See #29906
+                                       e.stopPropagation();
+                                       e.preventDefault();
+                                       el.removeClass('hover');
                                }
 
                                if ( unbind ) {
@@ -123,12 +129,14 @@ if ( typeof(jQuery) != 'undefined' ) {
                        target.siblings('.ab-sub-wrapper').find('.ab-item').each(refresh);
                });
 
-               $('#wpadminbar').click( function(e) {
-                       if ( e.target.id != 'wpadminbar' && e.target.id != 'wp-admin-bar-top-secondary' )
+               adminbar.click( function(e) {
+                       if ( e.target.id != 'wpadminbar' && e.target.id != 'wp-admin-bar-top-secondary' ) {
                                return;
+                       }
 
+                       adminbar.find( 'li.menupop.hover' ).removeClass( 'hover' );
+                       $( 'html, body' ).animate( { scrollTop: 0 }, 'fast' );
                        e.preventDefault();
-                       $('html, body').animate({ scrollTop: 0 }, 'fast');
                });
 
                // fix focus bug in WebKit