WordPress.org

Make WordPress Core

Ticket #26005: 26005.diff

File 26005.diff, 1014 bytes (added by westonruter, 5 years ago)
  • src/wp-includes/js/customize-preview.js

    diff --git src/wp-includes/js/customize-preview.js src/wp-includes/js/customize-preview.js
    index cfda0ed..bbb7a3c 100644
     
    4141                        api.Messenger.prototype.initialize.call( this, params, options );
    4242
    4343                        this.body = $( document.body );
    44                         this.body.on( 'click.preview', 'a', function( event ) {
     44                        this.body.on( 'click.preview', 'a[href]', function( event ) {
     45                                var link, isInternalJumpLink;
     46                                link = $( this );
     47                                isInternalJumpLink = /^#/.test( link.attr( 'href' ) );
    4548                                event.preventDefault();
     49
     50                                if ( isInternalJumpLink && '#' !== link.attr( 'href' ) ) {
     51                                        $( link.attr( 'href' ) ).each( function() {
     52                                                this.scrollIntoView();
     53                                        } );
     54                                }
     55
     56                                if ( event.shiftKey || isInternalJumpLink ) {
     57                                        return;
     58                                }
    4659                                self.send( 'scroll', 0 );
    47                                 self.send( 'url', $(this).prop('href') );
     60                                self.send( 'url', link.prop( 'href' ) );
    4861                        });
    4962
    5063                        // You cannot submit forms.