如何阻止iframe里引入的html自动跳转

问题:  在页面中用iframe引入别的页面链接,但它会跳转到这个引入的链接上

原因:引入的html中有  if (top.location != self.location) {top.location=self.location;}    使用这段代码后,会自动判断当前的location是否是顶层的,即是否被嵌套到iframe里面了,如果是,则强制跳转。

解决:

1、<iframe src="" class="iframe" scrolling="no" security="restricted" sandbox="">

即增加两个:security="restricted" sandbox=""(内嵌百度时要允许弹框,即sandbox="allow-popups"),前者是IE的禁止js的功能,后者是HTML5的功能。刚好就可以让IE,Chrome,Firefox这三大浏览器都实现了禁止iframe的自动跳转.

2、还有一种:用双重iframe可以阻止强制跳转,使用<iframe><iframe></ifame></ifame> 第一层的iframe会覆盖了第二层的,把第一层的做成透明的,然后第二层嵌套目标网页。

第一种方便好用。

原文地址:https://www.cnblogs.com/redFeather/p/15093585.html