1
我正在使用setTimeout来刷新页面,其中jquery模板项目将被更新。相关代码如下:setTimeout在发生页面错误时停止工作?
<script type="text/javascript">
var results = JSON.parse('@svgPath'.replace(/"/g,'"'));
window.onload = setupRefresh;
function setupRefresh() {
setTimeout("refreshPage();", 300); // milliseconds
}
function refreshPage() {
$("#resultTemplate").tmpl(results, {
checkLink : function(key) {
var linkRes = this.data[key];
checkFile(linkRes, callbackFunc);
alert("refreshed?");
return window.myRet;
}
}).appendTo("#resultList");
}
</script>
jQuery的模板:
<script id="resultTemplate" type="text/x-jquery-tmpl">
<li>
{{if $item.checkLink("link") == 1}}
<a href = ${link}>${type}</a>
{{else}}
${type}
{{/if}}
</li>
</script>
当我运行我的应用程序,它看来,如果该链接不可用(在AJAX功能checkFile(linkRes, callbackFunc);
会导致未找到404错误,那么计时器似乎停止。 但我希望定时器持续执行,也就是说,refreshPage
继续被调用。我怎样才能做到这一点? 谢谢!
'setTimeout'执行一次函数。什么会使它多次执行? – Koterpillar 2013-04-07 00:05:15