WordPress.org

Make WordPress Core

Ticket #39797: 39797.1.diff

File 39797.1.diff, 1.0 KB (added by westonruter, 5 years ago)

Account for mailto: or any other non-HTTP/HTTPS link

  • src/wp-includes/js/customize-preview.js

     
    145145                                return;
    146146                        }
    147147
     148                        // Allow internal jump links and JS links to behave normally without preventing default.
    148149                        isInternalJumpLink = ( '#' === link.attr( 'href' ).substr( 0, 1 ) );
    149 
    150                         // Allow internal jump links to behave normally without preventing default.
    151                         if ( isInternalJumpLink ) {
     150                        if ( isInternalJumpLink || ! /^https?:$/.test( link.prop( 'protocol' ) ) ) {
    152151                                return;
    153152                        }
    154153
     
    334333                        return;
    335334                }
    336335
    337                 // Ignore links with href="#" or href="#id".
    338                 if ( '#' === $( element ).attr( 'href' ).substr( 0, 1 ) ) {
     336                // Ignore links with href="#", href="#id", or non-HTTP protocols (e.g. javascript: and mailto:).
     337                if ( '#' === $( element ).attr( 'href' ).substr( 0, 1 ) || ! /^https?:$/.test( element.protocol ) ) {
    339338                        return;
    340339                }
    341340