2014-12-04 138 views
0
<html> 
<head> 

<script src="http://code.jquery.com/jquery-latest.min.js"></script> 
<script> 
$(document).ready(function() { 

setTimeout(function() { window.location.reload(); }, 2000); // 2 seconds, e.g. 


}); 
</script> 

<script> 
    $("#siteloader") 
     .html('<object data="http://www.mysite.co.uk"/>'); 
</script> 


</head> 
<body> 
<div> 
<object type="text/html" data="http://www.mysite.co.uk" width="800px" height="600px" style="overflow:auto;border:5px ridge blue"> 
</object> 
</body> 
</html> 

我有上面的代码,它将站点加载到div中,并每隔2秒刷新页面。我想要一个停止/启动刷新功能的按钮。我尝试了几种不同的方法,但似乎没有任何工作。我有很少的JavaScript知识,所以我希望我的代码不是太糟糕!启动/停止脚本刷新页面

+0

你为什么要重新加载整个页面,而不是刷新它的必要组成部分(S)? – 2014-12-04 10:40:06

+0

我是新来的JavaScript,当然重新加载包含外部网站的div会更有效率,但我不是那种先进的:( – AdamH 2014-12-04 10:44:36

回答

2

在这里你去:

<script type="text/javascript"> 
var timeout; 
$(document).ready(function() { 
    timeout = setTimeout(function() { window.location.reload(); }, 2000); // 2 seconds, e.g. 
    $("#siteloader").html('<object data="http://www.mysite.co.uk"/>'); 
}); 

function stopReload() { 
    clearTimeout(timeout); 
} 

</script> 

而且你可以添加一个按钮,或者像这样的东西来阻止这样的超时:

<a onclick="stopReload();">Stop it!</a> 

编辑:

启动它再次改变这样的代码:

<script type="text/javascript"> 
var timeout; 
$(document).ready(function() { 
    startReload(); //NEW PART 
    $("#siteloader").html('<object data="http://www.mysite.co.uk"/>'); 
}); 

function stopReload() { 
    clearTimeout(timeout); 
} 
function startReload() { 
    timeout = setTimeout(function() { window.location.reload(); }, 2000); // 2 seconds, e.g. 
} 

</script> 

并添加另一个按钮:

<a onclick="startReload();">Start it!</a> 
+0

非常好,感谢代码帮助,只是我需要:)你有任何想法如何再次启动该功能?我的js知识目前还没有削减:( – AdamH 2014-12-04 11:01:21

+0

在答案中看我的编辑部分。 – 2014-12-04 11:09:06

+0

哦,你绝对的传奇。非常感谢,很多很多谢谢:) – AdamH 2014-12-04 11:10:23

0

setTimeout有一个返回值,您可以使用它来停止计时器。 http://www.w3schools.com/jsref/met_win_cleartimeout.asp这个页面上还有一个例子,它完全符合你的需求。

+0

虽然是真的,但这是更多的评论,你需要完成你的答案与你的意思的代码示例(适用于所问的问题) – 2014-12-04 10:38:02

+0

请按照链接...并且,我不需要*用代码示例完成答案任何有助于解决问题的方法 – orange 2014-12-04 10:41:10

+0

在这种情况下,这个建议应该作为一个评论。不是我的DV顺便说一句 – 2014-12-04 10:43:54