如何在删除脚本后在dom中刷新/重新编译脚本?

时间:2016-05-05 16:00:59

标签: javascript jquery

我需要删除脚本,之后,$('body').click(function (e) {的功能无法正常工作,因为它位于已删除的脚本中。

我做:



$('script[src^="app/common/kendoGridExtendedHelper.js?1"]').remove();




$('body').click(function (e) {继续工作之后

buuuut,我可以通过开发工具在浏览器中看到这个脚本。

请帮助

1 个答案:

答案 0 :(得分:0)

它不会像你一样假设。当脚本运行并且click事件处理程序附加到'body'时,它已经在DOM中,并且您对脚本标记所做的任何操作都不会改变它。

您必须在自己的脚本中删除处理程序,只需执行以下操作:

$('body').off('click');

这可能会很混乱,并打破其他功能,因为每个点击处理程序将从'body'中删除。这种情况的理想方法是使用名称空间。如果您在尝试删除的脚本中拥有控制权,请使用命名空间附加点击处理程序:

$('body').on('click.somenamespace', function () { ... });

然后在你的脚本中使用相同的命名空间分离它:

$('body').off('click.somenamespace');