-1

外部 iframe 如何设法重定向出您的网站?

如何防止这种情况?

如果没有点击,是否可以收听“重定向请求”并阻止它们?

4

4 回答 4

1

外部 iframe 如何设法重定向出您的网站?

parent.location不是只读的

如何防止这种情况?

通过不构建不想被构建的不受信任的第三方内容。

于 2012-09-28T08:44:41.077 回答
0

你没有。

这自古以来就被称为“框架破坏”(好吧,就“网络”而言)。子框架能够根据需要设置托管窗口。

你唯一能做的就是不要<iframe>去你不信任的地方。

于 2012-09-28T08:45:14.073 回答
0

iframe 可以到达主体和窗口,我们可以看到它可以使用 jqueryUi 在不同 iframe 之间拖放对象,在这种情况下,外部 iframe 可以轻松到达主窗口并使其成为 window.location.href 。我现在很忙,但我认为这将适用于原始 javascript。window.addEventListener('load',function(){}) 或 location 或其他事件可能起作用,然后 event.preventDefault() 可以停止重定向。但是我还没有尝试过。[编辑 hashchange 或喜欢这个事件我相信可以做到:) ]

于 2012-09-28T08:50:20.607 回答
-1

我是这样做的:

// Listen for unloads
var prevent_bust = 0  
window.onbeforeunload = function() { prevent_bust++ }  
setInterval(function() {  
  if (prevent_bust > 0) {  
    prevent_bust -= 2
    var currentTime = new Date();
    if((currentTime.getTime()-lastClick) > 500) { // If no clicks in the last .5 second don't redirect
        window.top.location = 'http://justwalk.it/stuff/204/foo'
        }
  }  
}, 1)

// Listen for clicks, save time of latest one
var currentTime = new Date().getTime(), lastClick ;
$("body").click(function () {
    var currentTime = new Date();
    lastClick = currentTime.getTime();
    console.log('click time:'+lastClick);
    });
于 2012-09-28T09:54:50.993 回答