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

How to refresh/re-compile scripts in dom after removing of script?

本文关键字:脚本 编译 新编译 dom 删除 刷新      更新时间:2023-09-26

我需要删除脚本,然后,作为$('body').click(function (e) {的函数就不必工作了,因为它位于已删除的脚本中。

我做:

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

$('body').click(function (e) {继续工作之后,我可以通过开发工具在浏览器中看到这个脚本。

请帮助

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

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

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

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

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

然后在脚本中使用相同的名称空间将其分离:

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