阻止iframe重定向父页面

时间:2013-03-22 19:51:51

标签: javascript jquery asp.net html redirect

情况如下: 我在同一个域名,我的网站内有一个iframe。 目前,我无法立即访问部署问题的iframe代码。

当iframe加载时,其中的代码会检测到在父页面上触发重定向的内容。暂时,我想删除它。我知道我可以使用onbeforeload,但每次用户点击任何链接时都会显示警告。

有没有办法可以检测到重定向?它发生在主父页面完全加载之前。

我搜索了很多,但仍然没有可行的解决方案。

谢谢!

4 个答案:

答案 0 :(得分:6)

阅读w3.org spec后。我找到了另一个解决方案。

您可以设置sandbox="",以防止iframe重定向。据说它也不会重定向iframe。你基本上会失去点击。

此处示例:http://jsfiddle.net/ppkzS/1/
没有沙箱的示例:http://jsfiddle.net/ppkzS/

答案 1 :(得分:2)

试试这个:

<iframe align="left" src="http://stackoverflow.com/" sandbox=""></iframe>'

答案 2 :(得分:0)

使用 onbeforeunload 事件要求用户离开此页面或留下。

<script>
    window.onbeforeunload = function(){
        return false; // This will stop the redirecting.
    }
</script>  

我的回答是基于Stackoverflow中答案的答案!!!

答案 3 :(得分:-4)

这是一个丑陋的黑客攻击,但这里可能会有所作为(我承认我对iframe的工作原理不太了解)。通过javascript抓取您要放入iframe的页面。使用javascript解析它直到你到达重定向代码,并删除重定向代码。然后将结果放入iframe。最好是丑陋,但似乎它可能有用。