你不能遍歷它,沒有; DOM jQuery的工作原理就是植入iframe的窗口。
但該窗口對象有一個parent
屬性,它指向父窗口。所以你可以使用它來訪問父窗口中的東西。
如果父窗口也有jQuery加載,您可以像這樣使用它:parent.$("selector")
。
如果父窗口沒有加載jQuery,但iframe的確如此,您通常可以在父項中查找這樣的內容:$(parent.document).find("selector")
,但jQuery的其他用途可能是松鼠,如果可能,最好使用從它加載的窗口jQuery。
(您可以在框架和其父是從同一產地只加載做到這一點。)
回覆您的評論:
給我的唯一的事情就是。 btn1的jquery對象。我如何找出它的父iframe元素。 ?
我想訪問此iframe之外的DOM。我想知道目前的iframe的父DIV
我不相信有任何直接的方式做到這一點,沒有,你要狩獵:jQuery對象內的按鈕元素(例如,btn1[0]
)有一個叫做財產ownerDocument
,這將是=== (theWindowThatContainsIt).document
。 iframe元素有一個contentDocument
屬性,它指向相同的東西。所以你用parent
獲取父窗口,然後找到所有的iframe
,它出現,並選擇具有.contentDocument === btn[0].ownerDocument
之一:
var btn1 = $("#btn");
var doc = btn1[0].ownerDocument;
var iframe = $(parent.document).find("iframe").filter(function() {
return this.contentDocument === doc;
});
if (iframe.length) {
// We have the `iframe` element. To get its parent, we'd use
// `iframe.parent()`. Let's give it a green border:
iframe.parent().css("border", "1px solid green");
}
一切都來自同一產地 –
@RohitKumar加載:我想通。然後上述將工作。 –
挑戰1)只有給我的東西是。 btn1的jquery對象。 如何找出其父級iframe元素。 ? –