WordPress.org

Make WordPress Core

Ticket #21273: ticket.21273.2.diff

File ticket.21273.2.diff, 1.4 KB (added by ptahdunbar, 6 years ago)

verifies that the panel actually exists; bug fix when screen options panel is set; new: update the url when navigating between tabs.

  • wp-admin/js/common.dev.js

     
    131131                        $('.screen-meta-toggle').css('visibility', '');
    132132                        panel.parent().hide();
    133133                });
     134        },
     135
     136        updateHash: function( hash ) {
     137                window.location.hash = $(hash).attr('id')
    134138        }
    135139};
    136140
    137141/**
    138142 * Help tabs.
    139143 */
     144$(document).ready(function(){
     145        var panel = window.location.hash;
     146
     147        if ( panel && $(panel).length ) {
     148                link = $('a[href='+ panel +']'), panel = $( panel );
     149
     150                // Active the correct panel.
     151                $('.contextual-help-tabs .active').removeClass('active');
     152                link.parent('li').addClass('active');
     153                $('.help-tab-content').not( panel ).removeClass('active').hide();
     154                panel.addClass('active').show();
     155
     156                // Scroll back to the top.
     157                $('html, body').animate({ scrollTop: 0 }, 'fast');
     158
     159                // Open the help panel.
     160                if ( $('#contextual-help-wrap').is(':visible') )
     161                        screenMeta.close( $('#contextual-help-wrap'), $('#contextual-help-link') );
     162                else
     163                        screenMeta.open( $('#contextual-help-wrap'), $('#contextual-help-link') );
     164        };
     165});
     166
    140167$('.contextual-help-tabs').delegate('a', 'click focus', function(e) {
    141168        var link = $(this),
    142169                panel;
     
    153180
    154181        panel = $( link.attr('href') );
    155182
     183        screenMeta.updateHash( panel );
     184
    156185        // Panels
    157186        $('.help-tab-content').not( panel ).removeClass('active').hide();
    158187        panel.addClass('active').show();