2014-09-28 114 views
0

我有一個iframe中的元素,比如iframe的主體,並且從這個元素中我需要訪問該元素所屬的特定iframe的所有父項。文檔中可能有多個iframe,我只需要特定iframe的父項,並通過選擇器(例如類名稱)進行過濾。jQuery - 如何從iframe中的元素選擇iframe的父母?

如果元素不在iframe內,我只能做element.parents('.class-name');。我需要檢查這個父類是否包含特定的後代(由類名稱等選擇符過濾)。

如果給定的元素不在iframe內,只返回它的父母而沒有任何錯誤消息。

+0

,如果你做了$(「XXX」)最近( 「yyy」)在iframe中應該只能找到你在iframe中的「yyy」,它不會檢查父窗口。 – artm 2014-09-28 12:05:11

+1

,因爲它是一個框架,你將不得不得到'window.parent'這將是主頁面窗口,並從那裏工作,找到iframe元素 – charlietfl 2014-09-28 12:07:56

+0

[某些信息](http://stackoverflow.com/a/24096958/1169519 )關於如何訪問'(i)框架'。 – Teemu 2014-09-28 12:15:34

回答

0

我找到了一個解決方案,我不知道這是否是理想的,但在這裏它是:

var $element = jQuery(element); 
var element_frame_element = $element[0].ownerDocument.defaultView.frameElement; 
var element_parent = ((element_frame_element === null) ? $element : jQuery(element_frame_element)).parents('.class-name') 
0

事情是這樣的:window.parent.$('.className')