【发布时间】:2015-01-31 06:24:46
【问题描述】:
我的网站有一个这样的刷新标签:
<meta http-equiv='refresh' content='400'>
我嵌入了一些视频,当它们正在播放时,我想移除刷新。
在检测视频播放时间的特定函数中,我使用 JQuery 进行了此操作:
$("meta[http-equiv='refresh']").remove();
但页面在 400 秒后仍然刷新。
有没有办法解决这个问题?
【问题讨论】:
我的网站有一个这样的刷新标签:
<meta http-equiv='refresh' content='400'>
我嵌入了一些视频,当它们正在播放时,我想移除刷新。
在检测视频播放时间的特定函数中,我使用 JQuery 进行了此操作:
$("meta[http-equiv='refresh']").remove();
但页面在 400 秒后仍然刷新。
有没有办法解决这个问题?
【问题讨论】:
删除元标记不是一种选择,基于 Robert Rozas 添加的链接 --> Using Javascript to override or disable meta refresh tag
由于我没有您的代码,我无法完全提供帮助,但下面是一种在加载时自动刷新页面然后在事件中停止刷新它的方法。
单击测试按钮将停止刷新。只需将其挂接到您的事件中,它应该可以解决您的问题 -->
<script>
$(document).ready(function () {
$("#test").click(function (e) {
// This event will clear the timeout
clearTimeout(timeout);
});
var timeout = setTimeout(function()
{
// The refresh is occurring here
location.reload();
}, 4000);
});
</script>
<button id="test">Test</button>
以下将删除元标记(引号已删除)
$('meta[http-equiv=refresh]').remove();
【讨论】:
<meta>标签后仍然刷新,至少在Firefox中。
您是否尝试过使用<noscript> 标签?此外,如果 .remove 函数确实从 DOM 中删除了 <meta>,那么您应该确保它不是刷新页面的其他东西!
【讨论】: