jquery ajax加载/卸载html + javascript

时间:2011-05-16 14:29:12

标签: javascript ajax jquery

我有一个简单的html页面

<a onclick="doSomething();">do something</a>
<script type="text/javascript">
function doSomething(){
alert("something");
}
</script>

我想使用jquery ajax方法加载此页面,并将结果附加到div中。 一切都很好,但我希望能够卸载html + javascript内容。

例如,如果我清空我加载html内容的div,这是否也会卸载javascript函数。我知道有一个Javascript垃圾收集器但是因为有一个连接到链接的函数doSomething的参考,如果我删除了链接,我自动杀死了引用?

我问这个的原因是因为我将更复杂的脚本连接到加载的html,我想确保如果我删除html,我将删除为javascript分配的内存。

此外,如果你知道不同的实现,请随时告诉我。

抱歉我的英语不好。

由于

1 个答案:

答案 0 :(得分:0)

如果使用jQuery .load()方法,生成的脚本将标记并进行解析。

要卸载动态加载的JS,您需要使用自己的命名空间,然后可以将其清零。

App = {}  // master namespace

然后当你加载一个页面

App.aboutPage = { ... } // your dynamically loaded namespace for the "About page"

当你完成时

App.aboutPage = 0;
相关问题