Javascript 如何正确地取消jQuery函数的设置?
我正在使用Wordpress构建我的站点,并发现以下问题:父主题有一个带有下一个jQuery函数的脚本:Javascript 如何正确地取消jQuery函数的设置?,javascript,jquery,wordpress,Javascript,Jquery,Wordpress,我正在使用Wordpress构建我的站点,并发现以下问题:父主题有一个带有下一个jQuery函数的脚本: ;(function($) { 'use strict' var headerFixed = function() { if ( $( '.site-header' ).length ) { var headerFix = $('.site-header').offset().top; $(window).on('load scroll', func
;(function($) {
'use strict'
var headerFixed = function() {
if ( $( '.site-header' ).length ) {
var headerFix = $('.site-header').offset().top;
$(window).on('load scroll', function() {
...
});
}
};
// Dom Ready
$(function() {
headerFixed();
});
})(jQuery);
这个函数不能正常工作,所以我想在我的子主题中用它代替我自己的,但我需要先取消设置这个函数。但是,我不知道如何尝试:我似乎无法从“$(function(){}”);”闭包外部访问该函数
我还试图删除附加到$(window)对象的事件处理程序“scroll”和“load”的函数,但我也不确定如何执行此操作
实现这一目标的正确方法是什么
p.D.请注意,我不是在寻找排队/出列脚本解决方案,因为父主题脚本包含许多我想要保留的其他jQuery函数。我正在寻求一种面向jQuery/Javascript的解决方案来取消函数设置。脚本所做的持久工作是:
$(window).on('load scroll', function() {
...
});
您不能仅删除该函数,因为您需要对该函数进行引用,并且没有(官方)方法从jQuery获取该引用。但您可以通过以下方式从窗口中删除所有加载和滚动处理程序:
$(window).off("load scroll");