我一直试图通过查看iframe来源制作一个可以在网络上获取视频播放器来源的扩展程序,然而事实证明很多iframe都将iframe嵌套在其中的实际视频中是,或者有时甚至是另一个iframe深度。我一直试图用这样的东西来深入研究:
var iframe = document.getElementsByTagName("iframe");
var nestedframes = iframe.getElementsByTagName("iframe");
并且像这样:
var iframe = document.getElementsByTagName("iframe");
var innerDoc = iframe.contentWindow.webbody.innerHTML;
var nestedframes = innerDoc.getElementsByTagName("iframe");
但它们返回此错误:contentscript.js:6未捕获TypeError:iframe.getElementsByTagName不是函数。
如果有人有任何想法会非常感激。
答案 0 :(得分:0)
getElementsByTagName()
方法使用指定的标记名称获取文档上的所有元素。这意味着它会为您提供列表元素。
所以你应该迭代它或选择单个元素来调用另一个DOM方法。 (注意 [0] )
var iframe = document.getElementsByTagName("iframe")[0];
var nestedframes = iframe.getElementsByTagName("iframe");