关于iframe废弃后仍占用内存的问题 最简单的就是不用它,用Ajax读取出来,然后直接现实到DIV中 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 同问,只知道createElement构造html元素,有没有响应的释放?是不是只要removeChild后,再执行变量=null就可以了 确实有这问题,想不通浏览器原理,IE和FF都出现这种情况 其实这个问题不止是IFRAME,你删除页面上所有的元素都不会释放, 只有关闭浏览器才行, 你浏览几个新闻网站后看看就知道了 若是IE浏览器,在 remove IFRAME 之后再调用一下这个方法: CollectGarbage() 如果是automation对象你会看到明显的效果 如果是automation对象,且涉及 事件/回调 处理,CollectGarbage()需要连续调用两次才能完全释放。 <HTML> <BODY> <INPUT type="button" value="Automate Excel" name=AutomateExcel onclick="StartExcel()"> <SCRIPT LANGUAGE=Javascript> var idTmr = ""; function StartExcel() { var oExcel; oExcel = new ActiveXObject("Excel.Application"); oExcel.Quit(); oExcel = null; idTmr = window.setInterval("Cleanup();",1); } function Cleanup() { window.clearInterval(idTmr); CollectGarbage(); }</SCRIPT> </BODY> </HTML> 你看进程,使用CollectGarbage()与没使用之间的区别。excel.exe 晕. 刚测试了楼上的代码,用了CollectGarbage()内存还用多点 CollectGarbage();不可以删除内存,如何删除不用的内存?最好给出源码 网载:------------------------------------------网络上流传的关于JS释放内存的方式~ 大概就是只说过。将变量使用以后设置为 null,但是IE的GC是当鼠标点击最小化按钮时发生~~ 也就是说我们从程序上看已经释放了内存其实之前更本没有释放~~~ 研究 jsvm 的时候,发现 js.lang.System 里面定义了 gc() 方法System.gc = function (){ if (System.isIeBrowser()) { CollectGarbage(); setTimeout("CollectGarbage();", 1); }}CollectGarbage() 好像是ie特有的一个函数,为什么通过setTimeout的方式调用,可能是防止上下文中的过程变量仍然有效的原因吧! 通过setTimeout的方式调用? firebug没有在错误处中断功能 JS IE浏览器如何设置,才能允许发送XML 怎样让子层拖拽时,使父层高度随子层拖拽自动扩大以适应 鼠标焦点问题,请进来看看 恳求大家帮我一下吧,这个怎么替换? 从上一页传递一个字符串,如何用javascript扑获 怎么将数组清空? 关于JS常用的几个东东 超难题!如何用JS获取用户输入、后退等方式转到其它网页的Url? 怎么切换两个input里面的值 从XML文档中读取数据在HTML中显示!come in look look! IE7模式窗口用_self来防止页面提交的时候弹出新窗口失败!
<BODY>
<INPUT type="button" value="Automate Excel" name=AutomateExcel onclick="StartExcel()">
<SCRIPT LANGUAGE=Javascript>
var idTmr = "";
function StartExcel() {
var oExcel; oExcel = new ActiveXObject("Excel.Application");
oExcel.Quit();
oExcel = null;
idTmr = window.setInterval("Cleanup();",1);
} function Cleanup() {
window.clearInterval(idTmr);
CollectGarbage();
}</SCRIPT>
</BODY>
</HTML> 你看进程,使用CollectGarbage()与没使用之间的区别。excel.exe
最好给出源码
------------------------------------------
网络上流传的关于JS释放内存的方式~ 大概就是只说过。将变量使用以后设置为 null,但是IE的GC是当鼠标点击最小化按钮时发生~~ 也就是说我们从程序上看已经释放了内存其实之前更本没有释放~~~
研究 jsvm 的时候,发现 js.lang.System 里面定义了 gc() 方法System.gc = function ()
{
if (System.isIeBrowser())
{
CollectGarbage();
setTimeout("CollectGarbage();", 1);
}
}CollectGarbage() 好像是ie特有的一个函数,为什么通过setTimeout的方式调用,可能是防止上下文中的过程变量仍然有效的原因吧!