Rei*_*ica 7 javascript meta-tags
以下代码允许用户停止元刷新发生 - 并且它成功地meta refresh从页面中删除,但浏览器仍然刷新页面.知道如何让它工作吗?
<!doctype html>
<html>
<head>
<title>Test</title>
<meta charset="UTF-8" />
<meta http-equiv="refresh" content="5" id="refresh" />
<script src="//code.jquery.com/jquery-1.11.2.min.js"></script>
<script type="text/javascript">
$(function(){
$("a").click(function(e){
e.preventDefault();
$("#refresh").remove();
});
});
</script>
</head>
<body>
Reloaded at <span id="time"></span>
<script>
document.getElementById("time").innerHTML = Date();
</script>
<a href="#">Stop refresh</a>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
编辑:这与此问题不同,因为该问题需要为不支持javascript的用户提供后备解决方案 - 对我来说情况并非如此(该问题的大部分答案都不适用于此问题).
Cla*_*o P 12
只是为了完整而不是我推荐的方式.你可以打电话:
window.stop();
Run Code Online (Sandbox Code Playgroud)
要停止加载窗口.Internet Explorer不支持此功能,您必须这样做:
document.execCommand("Stop");
Run Code Online (Sandbox Code Playgroud)
我认为您将无法执行此操作,因为在加载页面时会读取标头,并且浏览器会安排刷新。我认为浏览器无法为您取消这种方式,因为它实际上是HTTP标头,而不是文档的一部分。最好为使用计时器安排刷新的body元素添加一个onload处理程序,然后让您的Click处理程序取消计时器。
<script type="text/javascript">
$(function(){
var timer;
$('body').on('load', function() {
timer = setTimeout(refresh, 5000);
});
$("a").click(function(e){
e.preventDefault();
if (timer) {
clearTimeout(timer);
timer = null;
}
});
function refresh() {
timer = null;
document.location.reload(true);
}
});
</script>
Run Code Online (Sandbox Code Playgroud)
小智 1
您稍后无法通过 JavaScript 删除标头,因为加载页面时会触发重新加载。但推迟了5秒。
相反,您可以改变思维方式并使用 javascript 而不是元标记重新加载页面:
<!doctype html>
<html>
<head>
<title>Test</title>
<meta charset="UTF-8" />
<script src="//code.jquery.com/jquery-1.11.2.min.js"></script>
<script type="text/javascript">
var timer = setTimeout(function() {
window.location = window.location;
}, 5000);
$(function(){
$("a").click(function(e){
e.preventDefault();
clearTimeout(timer);
});
});
</script>
</head>
<body>
Reloaded at <span id="time"></span>
<script>
document.getElementById("time").innerHTML = Date();
</script>
<a href="#">Stop refresh</a>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8232 次 |
| 最近记录: |