2016-11-12 156 views
0

我正在研究改變現有網頁的簡單Chrome擴展。不幸的是,網頁使用了一些iframe,這使得訪問DOM變得更加困難。從'動態'iframe訪問DOM

我想訪問mainFrame中的元素,但其內容似乎是動態生成的(不確定這是如何工作的)。 src是指blank.htm,它是空的。

document.getElementById("mainFrame").contentDocument 

這得到空blank.htm

<frame src="blank.htm" name="mainFrame" id="mainFrame" title="mainFrame" /> 

的內容和與此:

document.getElementById("mainFrame") 

我可以看到DOM,但我不知道如何進一步選擇元素。我可能可以通過...('mainFrame").childNodes[i]訪問它們,但我寧願選擇它們的類或ID。

回答

2

iframe dom內容不能從父文檔訪問。只有你可以做的是相反的,你可以從iframe訪問父文檔的DOM。由於安全原因,這些都受到限制。但是你可以從鉻擴展功能訪問它們(如果你正在爲擴展工作)。

有關Chrome擴展訪問iframe中的內容,請按照link

+0

感謝您的詳細信息!給我一個真正的頭痛 – ervazu

+0

你歡迎隊友:) – jafarbtech