我想获取带有标签“div”但位于外部页面上的所有元素。我知道为了获取位于外部页面上的每个 DIV 的 innerHTML,我们有 jquery 加载函数,它允许您指定要加载的元素 id。这很有用,但我想知道如何首先找到所有这些 div?如果我只有一个 html 文件,我会使用
var divs= document.getElementsByTagName('div');
,但我不知道在这种情况下该怎么做
问问题
1794 次
1 回答
2
如果您只有其他页面的 URL,则可以使用XMLHttpRequest
. 将该字符串保存到变量html
中。然后你可以这样做:
var externalPage = document.createElement("div");
externalPage.innerHTML = html;
var divs = externalPage.getElementsByTagName("div");
现在divs
是另一个页面NodeList
的div元素。
如果您已经使用 打开了另一个页面window.open()
,则可以改为使用该调用的返回值来访问其document
对象:
var otherWindow = window.open("http://example.com/");
var divs = otherWindow.document.getElementsByTagName("div");
请注意,在这两种情况下,您都受同源政策的约束。
于 2013-08-13T13:35:13.383 回答