停止一个jQuery脚本

问题描述:

我想知道是否有可能(以及如何)停止单击事件的jQuery脚本。停止一个jQuery脚本

我加载它的点击这样

$("#id_button").click(function() { $.getScript("script.js"); alert ("The script is activated"); });

,我想阻止它以同样的方式。

我不确定你是否在为这一件事做出选择。

可以绑定和取消绑定使用jQuery事件一样

$("#id_button").bind("click", function(){ 
}); 

和取消绑定

$("#id_button").unbind("click"); 
+0

嗯,我试过了,但它didn'work。我之前没做过绑定,但在规范中,似乎我们可以在没有绑定的情况下使用解除绑定。 我做的是: $(“tr”)。click(highlight); (“#stop_script”)。click(function(){{“tr”)。unbind(“click”); }); 但它不会改变任何东西 – Johanna 2010-06-23 08:21:54

如果这是关于js文件的动态“退出”,你可以申请Jonathan Sampson's approach.

基本上“script.js”可以被封装在一个对象中,并在“点击”时动态加载。在下一个单击事件中,您可以选择不同的按钮单击或事件,您可以将该对象设置为null,从而删除该脚本的功能。

编辑: Rebecca Murphy's slides on code organization.

+0

这似乎是一个好主意,但你会怎么做? – Johanna 2010-06-23 08:24:28

+0

我假设script.js有一些你在事件触发后使用的方法。你可以把这些方法放到一个对象中,然后实例化onclick对象,而不是加载* .js文件。然后,要删除它,只需将该对象设置为null。当然,我比我自己的脑海里借来的更多,丽贝卡墨菲对这个问题有很好的评论。她专注于代码组织,但将代码移动到“对象”中可让您获得更多的权力,并可能使您查看的内容更容易一些。 – 2010-06-23 17:05:50