非常多,我的问题很简单,在发布之前我确实搜索过类似的问题。我想知道如何让Javascript代码在页面打开的时候重复执行,而不是代码运行一次,完成或只响应事件处理程序。我非常想要的JavaScript的equivilant:查看Javascript条件每帧
$(document).ready(function() {
});
但我不想使用jQuery,因为它是低效率的。我想检查一个===条件每一帧。
非常多,我的问题很简单,在发布之前我确实搜索过类似的问题。我想知道如何让Javascript代码在页面打开的时候重复执行,而不是代码运行一次,完成或只响应事件处理程序。我非常想要的JavaScript的equivilant:查看Javascript条件每帧
$(document).ready(function() {
});
但我不想使用jQuery,因为它是低效率的。我想检查一个===条件每一帧。
setInterval(function(){
var blah = whatever;
if (done){
clearInterval();
}
},time_in_milliseconds);
循环保持你的每毫秒的说法循环。如果你想要一个比毫秒更细的循环或者像计算机那样难以做到的话,那么只需要一个常规while(true){}就足够了。
酷!我将用它来检查循环中的许多元素的onClick处理程序。最后一个问题:假设帧速率为每秒60帧,每秒恰好60帧,那么运行它的最佳选择是什么?我猜测大约16.6毫秒我设置它?但是我希望每一帧检查条件,那么10毫秒就足够了? – turkey3 2014-10-09 02:52:36
time_in_milliseconds = 1000; //每秒; time_in_milliseconds/= 60; – jollarvia 2014-10-09 02:54:54
setInterval是非阻塞的,就像上面提到的derek一样,如果你想要做一些类似游戏的事情,这将是一条路 – jollarvia 2014-10-09 02:58:17
使用的setInterval ..一个在window.onload功能
window.onload = function() {
function test() {
alert("test");
}
setInterval(test, time_miliseconds);
}
查找的setInterval()内 – jollarvia 2014-10-09 02:39:51
谢谢!你能否给我一个快速的代码示例,说明如何将其实际结合到我想要的结果中? – turkey3 2014-10-09 02:41:09
*而不是代码运行一次,完成或只响应事件处理程序*这是你应该(必须)做的。如果您的代码不间断运行,那么该页面将冻结。如果你使用'setInterval'循环,那么它对于任何问题都不是一个有效的方法。我不知道你在这里做什么,但是每当你尝试重复执行相同的代码时,效率就会不高(说jQuery通常比你编写的代码更高效)。 – 2014-10-09 02:56:34