停止iframe加载会给出未定义的错误

时间:2014-05-07 12:54:01

标签: javascript jquery iframe

我有一个脚本会将几个iframe(例如8个)附加到正文中:

image_iframe[sequential number 1-8] = $('<iframe />');
image_iframe[sequential number 1-8].appendTo('body');

当我尝试停止加载特定iframe中的图片时:

if(window.stop !== undefined) {
      image_iframe[2].contentWindow.stop();
}
else if(document.execCommand !== undefined) {
      image_iframe[2].contentDocument.execCommand("Stop", false);
}

我收到以下错误:

  

未捕获的TypeError:无法读取未定义的属性“stop”

我该如何解决这个问题?


带有原始代码的

Here's a jsfiddle。只需单击“下一步”按钮几次即可重现错误。它基于this jsfiddlethis question,效果很好。

我做了一些搜索,发现了这两个问题,但不确定是否是同样的问题:

  1. I get an undefine error in iframe
  2. how to correctly stop the transport inside an iframe

1 个答案:

答案 0 :(得分:0)

image_iframe[index]是一个jQuery元素。要获得contentWindow,您需要先获取iFrame DOM元素。建议改变

// from
image_iframe[this - 3].contentWindow.stop(); 

// to
image_iframe[this - 3].get(0).contentWindow.stop();