这个不是错误,是你的代码太耗费资源。
例子:
for(i=0;i<50000000000000;i++)
这样的情况就可能会有那样的提示
例子:
for(i=0;i<50000000000000;i++)
这样的情况就可能会有那样的提示
解决方案 »
- 关于函数重写,请路过的老婆帮忙看一下。谢谢了
- javascript来对用户的图片进行处理
- 如何用正则表达式指定一个整数取值范围是否在0-23范围之内??
- ext fckeditor
- JsonStore的参数问题
- 如何判断一个控件是属于form还是直接属于document的?
- javascript如何实现两个不同页面链接到同一页面,再点击此页面的同一按钮返回各自页面,在线等
- 如何让文本框的内容不断变化?
- 请问?????????,洒分!!!!!!!
- ExtJs4.2 TreePanel拖拽问题,复选框问题
- 请问onFocus和onClick的区别
- 请问怎么在一个LISTBOX里把里面的记录按一个按钮就删除一个的。
这样虽然速度会慢点... 但不会导致死机或出现以上错误.
你可以在"遍历" 的时候, 出一个 waiting bar .. 这样就应该能解决了.
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>emu</title>
</head>
<body>
<div id=ttText style="display:none">
程序运行中......<BR>
<span id=currentState></span> <button onclick="CANCLE = true;">停止</button><BR>
</div>
<button onclick="run_step1()" id=button1>开始</button>
<span id=result></span>
<script>
var i=0;
var sum =0;
var CANCLE = false;
var max = 2000000; //循环的终点
var step = 9999; //步长:选择合适的步长可以在响应能力和计算速度上获得比较好的折衷。
//(步长用9999而不是10000只是为了显示的时候好看,其实都一样)
var timeStart = "";
function run_step1()
{
if (i == 0)timeStart = new Date();
ttText.style.display="";
button1.style.display="none";
setTimeout("run_step2()",1);
CANCLE = false;
}
function run_step2()
{
if (CANCLE)
{
ttText.style.display="none";
button1.style.display="";
button1.value="继续";
return;
}
if (i == null)
{
//初始化
//注意:这里不能写var,因为循环变量和结果都为全局变量。
i = 1;
sum = 0;
run_step2();
}
else if (i<=max)
{
var endValue = i+step;
if (endValue >max) endValue = max+1;
for (j=i; j<endValue ; j++)
sum += j;
i+=step;
currentState.innerText = i;
result.innerText = "临时结果:"+sum;
setTimeout("run_step2()",20);
}
else
{
run_step3();
}
}
function run_step3()
{
ttText.style.display="none";
button1.style.display="";
button1.value="重新开始";
result.innerText = "最终结果"+sum+" 用时:"+(new Date-timeStart)/1000+"秒"
sum = 0;
i = 0;
}
</script>
</body>
</html>
-----------------------------------------------------------------
要么象csdn的论坛列表一样,延迟加载。要么该变一下形式。
原来在做一个1000个人的员工树的时候,用原始的树的形式要好几百K的数据量,就算在服务器端生成好了显示都够慢的。后来改成象资源管理器那样的,选了部门再动态加载员工列表显示,现在跑10000个人的数据一点都不慢。