我如何检测一个iFrame被重定向到另一个网址?(How can I detect if an iF

2019-09-28 07:43发布

我想列出在这一个分类广告的iframe。 有时厂商的页面重定向到他们的主页时,该项目不再可用。 我希望能够找出这个,所以我可以去索引假设它已经售出的项目。 什么是实现这一目标的最佳方法是什么?

Answer 1:

您可以使用触发onload事件或重装jQuery的负载功能。

http://api.jquery.com/load/

您将需要存储的时间的iframe已重新加载的数量。

就像是,

var reloaded = 0;
$("#iframe_id").load(function(){
    reloaded++;
});


Answer 2:

当它在不同的领域,除非他们有设定正确的头不能检测iframe的位置CORS 。

要做到这一点,而不必担心其他域的唯一方法是让你的服务器端代码运行在网页上检查,看看它是否重定向。



Answer 3:

在框架的负载,检测网址是什么:

var frameLoadCount = 0;
var firstURL;

$('iframe').load(function() {
    if (frameLoadCount === 0) {
        firstURL = $(this).attr('src');
    } else {
        if (firstURL !== $(this).attr('src')) {
            // The iframe has been redirected.
        }
    } 
});

基本上上面的代码每次运行的IFRAME加载,检查它是否是第一次,如果是,则URL分配给一个变量。 如果加载了不止一次,检查原始地址当前URL匹配。

这从如果它的加载不止一次只是检查,因为你可以针对具体来源等有优惠



文章来源: How can I detect if an iFrame gets redirected to another url?