在IE下内存长很多 firefox不会 急================================================================================================ function showContent() { //处理的一些语句 setTimeout("showContent()",100); } try{}catch{}应该可以的啊 ! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 以前做过一个项目 也这种情况 那项目找不到了 郁闷 记得当初就是try catch 还是onerror function showContent(){ var ajax = getxmlhttp(); var url = "showContent.php"; ajax.open("GET",url,true); ajax.onreadystatechange = function(){ if(ajax.readyState == 4 && ajax.status == 200) document.getElementById("divContent").innerHTML = ajax.responseText; } ajax.send(null); setTimeout("showContent()",100); CollectGarbage(); }也没用 会不会和ajax返回的数据量大小有关?? 我就直接打开那个页面 什么也不做 就看到IE下面会长 firefox不会 1,以下不是递回function showContent() { //处理的一些语句 setTimeout("showContent()",100); } 2.不知这里面有些什么htmlajax.responseText;例如,如果有iframe,ie会对iframe裡的頁面進行歷史catch,造成無法內存回收。 下面这个也是递归,但没见内存增长,是不是ajax的问题??<html><head></head><body><div id="div1"></div><script>function showContent() { document.getElementById("div1").innerHTML=new Date().toString();setTimeout("showContent()",1000); } showContent();</script></body></html> aaaa<div id="divContent"></div><script type="text/javascript" language="javascript" defer >var ajax = getxmlhttp(); function showContent() { var url = "./test.htm"; ajax.open("GET",url,true); ajax.onreadystatechange = dealWithResult; ajax.send(""); setTimeout("showContent()",100); } function getxmlhttp() { return new ActiveXObject( "Microsoft.XMLHTTP" ); }function dealWithResult(){if(ajax.readyState == 4 ) {document.getElementById("divContent").innerHTML = ajax.responseText; }} showContent();</script> 刚才测试了,发现原因了不是ff内存不增长,是ajax在ff下出现错误了(装firebug就知道错误了),所以不setTimeout就不执行了,内存也不增长了主要是你setTimeout的间隔太短了,当ajax对象还没返回时有发起了另一次请求,这时ff出错停止执行代码,而ie对ajax的并发支持比较好,没有出现错误,而继续执行.你加行代码,时代码正常余兴就知道了,ff照样内存增长,而且比ie的还快function showContent() { var ajax = getxmlhttp(); //================================if(ajax.readyState!=0) ajax.abort();//如果对象对象状态不为0,取消上一次请求//================================var url = "showContent.php"; ajax.open("GET",url,true); ajax.onreadystatechange = function(){ if(ajax.readyState == 4 && ajax.status == 200) document.getElementById("divContent").innerHTML = ajax.responseText; } ajax.send(null); setTimeout("showContent()",100); CollectGarbage(); } 每运行“showContent”一次,就会new 一个function(){ if(ajax.readyState == 4 && ajax.status == 200) document.getElementById("divContent").innerHTML = ajax.responseText; } 造成耗用内存不断加大----解决办法请参照19楼的代码 1秒发起10次请求,你的服务器也受得了???我iis6,进程w3wp.exe一直占6%的cpu,你是想自己攻击自己的服务器??? http://www.testprogram.cn/chat.rar文件下载地址 做来玩的 所以上班时间不敢做 不好意思 中午再做 按照JK_10000 说的做了 有很明显的效果 showbo:所以不setTimeout就不执行了,内存也不增长了 (还是在执行)谢谢 请教一个javascript的问题! 救急:利用jquery显示各菜单效果? 跪求一个正则,超级难的,要JS获取 关于JavaScript的一些想法 关于获取IE浏览器版本的问题 急!javascript这个问题怎么解决? 如何可以锁定IE地址栏里面的内容?? 如何在js中点击一个按钮实现窗口最小化功能? 一个例子,是关于用PHP增加select内容,但有D问题,请高手指教。 一个看试简单,但很难解决的问题,谁有胆量来试!!!!!!!!!! Javascript 获取css属性问题 请问我这个Javascript代码怎么修改后才能在FierFox上运行起来?
{
var ajax = getxmlhttp();
var url = "showContent.php";
ajax.open("GET",url,true);
ajax.onreadystatechange = function(){
if(ajax.readyState == 4 && ajax.status == 200)
document.getElementById("divContent").innerHTML = ajax.responseText;
}
ajax.send(null);
setTimeout("showContent()",100);
CollectGarbage();
}也没用
1,以下不是递回
function showContent()
{
//处理的一些语句
setTimeout("showContent()",100);
} 2.
不知这里面有些什么html
ajax.responseText;
例如,如果有iframe,ie会对iframe裡的頁面進行歷史catch,造成無法內存回收。
<html>
<head>
</head>
<body><div id="div1"></div>
<script>
function showContent()
{
document.getElementById("div1").innerHTML=new Date().toString();
setTimeout("showContent()",1000);
}
showContent();
</script>
</body>
</html>
<div id="divContent"></div><script type="text/javascript" language="javascript" defer >
var ajax = getxmlhttp(); function showContent()
{
var url = "./test.htm";
ajax.open("GET",url,true);
ajax.onreadystatechange = dealWithResult;
ajax.send("");
setTimeout("showContent()",100);
} function getxmlhttp()
{
return new ActiveXObject( "Microsoft.XMLHTTP" );
}function dealWithResult()
{
if(ajax.readyState == 4 ) {
document.getElementById("divContent").innerHTML = ajax.responseText;
}
}
showContent();
</script>
function showContent()
{
var ajax = getxmlhttp();
//================================
if(ajax.readyState!=0) ajax.abort();//如果对象对象状态不为0,取消上一次请求
//================================
var url = "showContent.php";
ajax.open("GET",url,true);
ajax.onreadystatechange = function(){
if(ajax.readyState == 4 && ajax.status == 200)
document.getElementById("divContent").innerHTML = ajax.responseText;
}
ajax.send(null);
setTimeout("showContent()",100);
CollectGarbage();
}
function(){
if(ajax.readyState == 4 && ajax.status == 200)
document.getElementById("divContent").innerHTML = ajax.responseText;
}
造成耗用内存不断加大----解决办法请参照19楼的代码
文件下载地址 做来玩的 所以上班时间不敢做 不好意思 中午再做
showbo:所以不setTimeout就不执行了,内存也不增长了 (还是在执行)
谢谢