Ticket #30692: 30692.patch
| File 30692.patch, 2.4 KB (added by , 12 years ago) |
|---|
-
src/wp-admin/js/common.js
193 193 lastScrollPosition = 0, 194 194 pinnedMenuTop = false, 195 195 pinnedMenuBottom = false, 196 isScrolling = false, 197 scrollTimer, 196 198 menuTop = 0, 197 199 height = { 200 document: $document.height(), 198 201 window: $window.height(), 199 202 wpwrap: $wpwrap.height(), 200 203 adminbar: $adminbar.height(), … … 554 557 } 555 558 556 559 if ( height.menu + height.adminbar > height.window ) { 560 if ( windowPos < 1 || windowPos + height.window > height.document - 1 ) { 561 return; 562 } 563 557 564 if ( windowPos > lastScrollPosition ) { 558 565 // Scrolling down 559 566 if ( pinnedMenuTop ) { … … 626 633 lastScrollPosition = windowPos; 627 634 } 628 635 636 function resetHeights() { 637 height = { 638 document: $document.height(), 639 window: $window.height(), 640 wpwrap: $wpwrap.height(), 641 adminbar: $adminbar.height(), 642 menu: $adminMenuWrap.height() 643 }; 644 } 645 629 646 function unpinMenu() { 630 647 if ( isIOS ) { 631 648 return; … … 640 657 } 641 658 642 659 function setPinMenu() { 660 resetHeights(); 661 643 662 if ( $adminmenu.data('wp-responsive') ) { 644 663 $body.removeClass( 'sticky-menu' ); 645 664 unpinMenu(); … … 652 671 } 653 672 } 654 673 674 function scrollStart() { 675 if ( isScrolling ) { 676 window.clearTimeout( scrollTimer ); 677 678 scrollTimer = window.setTimeout( function() { 679 isScrolling = false; 680 }, 200 ); 681 } else { 682 isScrolling = true; 683 $document.triggerHandler( 'wp-scroll-start' ); 684 } 685 } 686 655 687 if ( ! isIOS ) { 656 $window.on( 'scroll.pin-menu', pinMenu ); 688 $window.on( 'scroll.pin-menu', function() { 689 scrollStart(); 690 pinMenu(); 691 }); 657 692 } 658 693 659 694 window.wpResponsive = { … … 792 827 window.wpResponsive.init(); 793 828 setPinMenu(); 794 829 795 $document.on( 'wp-window-resized.pin-menu postboxes-columnchange.pin-menu postbox-toggled.pin-menu', function() { 796 height.wpwrap = $wpwrap.height(); 797 height.window = $window.height(); 798 height.adminbar = $adminbar.height(); 799 setPinMenu(); 800 }).on( 'wp-collapse-menu.pin-menu', function() { 801 height.wpwrap = $wpwrap.height(); 802 height.menu = $adminMenuWrap.height(); 803 setPinMenu(); 804 }); 805 830 $document.on( 'wp-window-resized.pin-menu postboxes-columnchange.pin-menu postbox-toggled.pin-menu wp-collapse-menu.pin-menu wp-scroll-start.pin-menu', setPinMenu ); 806 831 }); 807 832 808 833 // Fire a custom jQuery event at the end of window resize
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)