0
我想提出一個奇怪的塊體運動的事情,但在它移動的10倍,它說:是否可以刪除最大調用堆棧大小?
Uncaught RangeError: Maximum call stack size exceeded
而我的目的是要讓它動的整個時間,這裏是代碼BTW:
<html>
<head>
<title>Look - The game</title>
</head>
<body>
<div id="square" style="position:absolute; width:5px; height:5px; background:black"></div>
<script src="http://code.jquery.com/jquery-2.1.1.min.js"></script>
<script>
var square = document.getElementById("square");
var duration = 1000;
var steps = 1;
function movesquare(){
var randomtop = Math.floor(Math.random() * screen.height);
var randomleft = Math.floor(Math.random() * screen.width);
$(square).animate({marginTop:randomtop, marginLeft:randomleft}, duration, movesquare);
duration -= steps;
steps = steps * 2;
}
movesquare();
</script>
</body>
你有使用遞歸的原因嗎?也許這是無意的?這是你的堆棧問題的原因。 – 2014-12-07 15:49:51
你正在做錯什麼...! – GOD 2014-12-07 15:50:14
'超出最大調用堆棧大小'表示您有一種_endless loop_,並且如果瀏覽器不會停止您的腳本,則在這種情況下,您的瀏覽器很可能會變得無響應。 – 2014-12-07 15:50:32