Themes: Remove jQuery dependency from wp-custom-header.js.
In [38985], we used jQuery to trigger a custom event once a video handler has completed so themes, like Twenty Fourteen, can execute their own adjustments after the header video has loaded. This replaces the jQuery `trigger()` method with a native event and updates Twenty Fourteen accordingly. Props adamsilverstein, joemcgill. Fixes #38550. git-svn-id: https://develop.svn.wordpress.org/trunk@39102 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
parent
c962a98980
commit
22bb12dd61
@ -105,11 +105,6 @@
|
||||
|
||||
if ( body.is( '.header-image' ) ) {
|
||||
|
||||
// Recaculate the header height when a custom header loads.
|
||||
$( 'body' ).on( 'wp-custom-header-video-loaded', function() {
|
||||
mastheadOffset = $( '#site-header' ).height();
|
||||
} );
|
||||
|
||||
_window.on( 'scroll.twentyfourteen', function() {
|
||||
if ( _window.scrollTop() > mastheadOffset && mastheadHeight < 49 ) {
|
||||
body.addClass( 'masthead-fixed' );
|
||||
@ -118,6 +113,12 @@
|
||||
}
|
||||
} );
|
||||
|
||||
// Update masthead offset once a custom header video loads.
|
||||
$( document ).on( 'wp-custom-header-video-loaded', function() {
|
||||
mastheadOffset = $( '#site-header' ).height();
|
||||
} );
|
||||
|
||||
|
||||
// Update masthead offset after a selective refresh.
|
||||
if ( 'undefined' !== typeof wp && wp.customize && wp.customize.selectiveRefresh ) {
|
||||
wp.customize.selectiveRefresh.bind( 'partial-content-rendered', function() {
|
||||
|
@ -1,4 +1,4 @@
|
||||
(function( window, $, settings ) {
|
||||
(function( window, settings ) {
|
||||
|
||||
if ( ! ( 'addEventListener' in window ) ) {
|
||||
// Fail gracefully in unsupported browsers.
|
||||
@ -31,11 +31,16 @@
|
||||
|
||||
if ( handlers.hasOwnProperty( id ) && handler.test( settings ) ) {
|
||||
handler.callback( settings );
|
||||
|
||||
// Set up and dispatch custom event when the video is loaded.
|
||||
if ( 'dispatchEvent' in window ) {
|
||||
var videoLoaded = new Event( 'wp-custom-header-video-loaded' );
|
||||
document.dispatchEvent( videoLoaded );
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
$( 'body' ).trigger( 'wp-custom-header-video-loaded' );
|
||||
}
|
||||
}
|
||||
|
||||
@ -151,4 +156,4 @@
|
||||
});
|
||||
}
|
||||
|
||||
})( window, jQuery, window._wpCustomHeaderSettings || {} );
|
||||
})( window, window._wpCustomHeaderSettings || {} );
|
||||
|
Loading…
Reference in New Issue
Block a user