我有一个页面使用类似的东西
<meta http-equiv="refresh" content="0;url=http://example.com/" />
但对于某个工作站上的某些用户,这不起作用。在 IE 中。cookie 或某处的设置是否有问题会导致此操作失败?我从来没有听说过这样的事情。
我有一个页面使用类似的东西
<meta http-equiv="refresh" content="0;url=http://example.com/" />
但对于某个工作站上的某些用户,这不起作用。在 IE 中。cookie 或某处的设置是否有问题会导致此操作失败?我从来没有听说过这样的事情。
问题是当 IE 看到这个时:
<meta http-equiv="refresh" content="0;http://www.example.com" />
它期望内容属性包含一个数字。IE 检查 URL 的唯一时间是内容属性是否包含“URL=”,因此在所有浏览器中最有用的重定向是这样的:
<meta http-equiv="refresh" content="0;URL=http://www.example.com" />
上面的示例将立即重定向,但如果您将 0 更改为另一个数字,它将等待那么多秒。希望这一切都有意义,它应该可以正常工作,但我仍然认为我的第一个想法是更好的。
Internet Explorer 中有一项安全设置不允许刷新元标记。它位于 Security 选项卡下,然后选择 Custom Level 和 Miscellaneous 下的 Meta Tag Refresh。如果禁用,它将停止元刷新工作。
除了能够有选择地禁用它之外,如果您将 IE 的安全级别设置为“高”[在 IE9 中观察到],它会自动禁用。
它真的是旧版本的 IE 吗?如果是这样,请尝试:
<meta http-equiv="refresh" content="0;url=http://example.com/"> </meta>
它需要一个空白区域。HTML 编辑器会抱怨,但忽略它。
看看这个解决方案。它同时处理 javascript 和 meta-refresh: Meta-refresh and javascript
META 标记不是空标记,在 HTML 中没有结束标记,只有在 XHTML 中。(如果您真的要发送 XHTML,它可能无法在旧版本的 IE 上正常工作,只有将 XHTML 发送到旧版 IE 的变通方法。)
尝试:
<meta http-equiv="refresh" content="0;url=http://example.com/">
你也可以试试:
只是一个疯狂的猜测:也许在重定向不起作用的那些机器上安装了一些广告拦截器。想不出任何其他原因为什么这种常见技术在某些机器上有效,而在其他机器上却对您无效。
如果有人尝试使用元刷新重定向到Facebook 应用程序(Page Tab 应用程序或 IFRAME 应用程序)中的新 URL,则 Facebook 会以某种方式禁用该标签。
解决方法是:
<script>
top.window.location = 'http://example.com';
</script>
请记住以“顶部”为目标,因为 Facebook 应用程序位于 IFRAME 中。