如何防止iframe统一自己

时间:2014-02-02 04:17:51

标签: javascript jquery

我们使用iframe来展示网站的设计(经他们同意)。问题是,一些网站有脚本,如:

if (top != self) top.location.replace(self.location.href); 

这会导致浏览器“跳转”到他们的网站。我们如何压制这些脚本?还有办法吗?

1 个答案:

答案 0 :(得分:1)

Wikipedia Article on Framekillers

上找到
var prevent_bust = 0;

// Event handler to catch execution of the busting script.
window.onbeforeunload = function() { prevent_bust++ };

// Continuously monitor whether busting script has fired.
setInterval(function() {
  if (prevent_bust > 0) {  // Yes: it has fired. 
    prevent_bust -= 2;     // Avoid further action.
    // Get a 'No Content' status which keeps us on the same page.
    window.top.location = 'http://server-which-responds-with-204.example.com/';
  }
}, 1);

这似乎是最可靠的方式,但你必须使用它,看看你的情况是否适合这个并在此报告。祝你好运。

PS - 如果您想进行更多研究,该页面上还有其他人。