易截截图软件、单文件、免安装、纯绿色、仅160KB

动态加载javaScript内存泄露问题

.利用Script标签可以跨域加载并运行一段JavaScript脚本, 但Neil Fraser先前已指出,脚本运行后资源并没被释放,即使是Script标签移除后。为了释放脚本资源,通常在返回后还要一些进行额外的处理
JScript code:
script = document.createElement('script');
script.src =
'http://example.com/cgi-bin/jsonp?q=What+is+the+meaning+of+life%3F';
script.id = 'JSONP';
script.type = 'text/javascript';
script.charset = 'utf-8';
// 标签加到head后,会自动加载并运行。
var head = document.getElementsByTagName('head')[0];
head.appendChild(script)

实际上很多流行的JS库都采用这种方式,创建一个scritp标签,赋予一个ID后加载脚本(比如YUI get()),加载完并回调后清除该标签。问题在于当你清除这些script标签的时候,浏览器仅仅是移除该标签结点。
JScript code:
var script = document.getElementById('JSONP');
script.parentNode.removeChild(script);

当浏览器移除这标签结点后的同时并没对结点内JavaScript资源的进行垃圾回收,这意味着移除标签结点还不够,还得手动的清除script标签结点的内容:
JScript code:
// Remove any old script tags.
var script;
while (script = document.getElementById('JSONP')) {
script.parentNode.remo


相关问答:

急求一个在网页中验证用户输入的JavaScript代码

比如有一个textbox,用户输入后点button按钮时,实现用JavaScript对textbox输入信息的验证,比如验证用户输入的是否是数字。
希望将HTML代码一并写出来哈,谢谢。
HTML code:

<!DOCTYPE html PUBLIC &quo ......

JavaScript游戏玛丽医生Dr Mario实现原理

在很久很久以前,我们这些80后的小朋友终于玩上了自己的小霸王游戏机,超级玛丽,玛丽医生,雪人兄弟,诸多经典游戏让人无法忘怀,成为一个心结!

在完成了俄罗斯方块后,这是我写的又一个JavaScript游戏,玛 ......

javascript中的两个问题请教,谢谢

1.看到《精通javascript》上说:javascript是完全异步的,那么是不是每条语句都不会执行完,下条语句就开始执行呢,实际上不是这样,也不可能是这样,不然怎么写程序?
2.代码如下,为什么不可行呢:
JScript ......

javascript小问题,急需解决

在javascript中,方法的返回(x,y)类型的值,应该怎样接收

返回(x,y)类型? 这是什么类型?

就像方法中,return (1,2)


我怎么没见过你说的这种写法?

直接接,js 是弱类型,接到后须自行处理!
......

如何在JavaScript中使用JSTL表达式

下列代码,如何在蓝色语句处使用红色语句定义的对象的相关操作(比如说将蓝色语句换成 pic.getFileName()方法取得的字符串)
<%@ page language="java" contentType="text/html; charset=UTF- ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号