Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果JS函数在控制台中工作,而不是在文档中工作,这意味着什么?_Javascript_Jquery - Fatal编程技术网

Javascript 如果JS函数在控制台中工作,而不是在文档中工作,这意味着什么?

Javascript 如果JS函数在控制台中工作,而不是在文档中工作,这意味着什么?,javascript,jquery,Javascript,Jquery,我有一个JQuery调用,我正在使用它来禁用我网站上Wordpress插件的功能。是的 $('.vc_gitem-animated-block a').unbind('click'); 当我在加载页面后将其粘贴到控制台时,它就会工作。但是,当我粘贴时,它不起作用 $(document).ready(function(){ $('.vc_gitem-animated-block a').unbind('click'); }); 因此,我假设我的unbind函数在绑定事件的函数之前被触发

我有一个JQuery调用,我正在使用它来禁用我网站上Wordpress插件的功能。是的

$('.vc_gitem-animated-block a').unbind('click');
当我在加载页面后将其粘贴到控制台时,它就会工作。但是,当我粘贴时,它不起作用

$(document).ready(function(){
    $('.vc_gitem-animated-block a').unbind('click');
});
因此,我假设我的
unbind
函数在绑定事件的函数之前被触发。因此,我这样做了

$(document).ready(function(){
    setTimeout(function() {
        $('.vc_gitem-animated-block a').unbind('click');
    }, 1000);
});

现在它开始工作了。但是,我希望为生产站点提供更好的解决方案,因为该解决方案似乎有点粗略。我应该怎么做呢?

这完全取决于绑定的位置/方式。问题是,如果您的文件要解除绑定,为什么您首先要绑定?出于好奇.document.ready函数是加载脚本后运行的第一个回调。从dom中删除元素不是更容易吗?看起来像一个快速绷带,在这种情况下,setTimeout是可以接受的,因为这就像解除绑定任意事件一样,而不是一开始就不绑定它。你确定这个类是“vc_gitem-animated-block”吗已经存在于HTML中,或者它也被其他脚本/框架动态添加。显然,当调用document.ready时,该类不存在,这意味着您需要确定代码/库的哪个部分正在添加该类,并相应地对调用进行排序。