[問題] Content Script要如何拿到root document

作者: leondemon (狗狗)   2016-09-30 16:58:50
我在開發瀏覽器套件,
利用 content script 來取得 HTML document 來注入一些 HTML elements
但是發現以下的 code 會注入到所有的 document,
包括頁面中 iframe 的獨立 HTML document:
```js
// @content_script.js
// 建立 HTML element
const elem = document.createElement('a');
elem.setAttribute('href', 'https://.....');
elem.innerHTML = 'ClickHere';
// 插入到 document.body 內
document.body.appendChild(elem);
```
以上 content script 代碼會在每個 HTML document 載入時都會執行 (包括 iframe 內)
有什麼方法能指載入到瀏覽器頁面開的「根」HTML document 呢?
作者: mirtac (mirtac)   2016-09-30 17:11:00
那個瀏覽器的?
作者: mcmj5566 (美江五六)   2016-09-30 17:46:00
載入content_script時同時載入jquery,再指定第一個body看看?
作者: akccakcctw (947)   2016-09-30 18:26:00
支援度可以到caniuse查
作者: eight0 (欸XD)   2016-09-30 18:35:00
檢查 window.top == window
作者: Ayukawayen (亞布里艾爾發芽>//<)   2016-09-30 18:39:00
content_scripts有all_frames屬性 不過預設就是false
作者: YoyaKazuma (喰)   2016-09-30 18:43:00
我想講的樓上已經講了XD預設應該是不會載入 iframe 裡才對 , 不知道是不是你另外加上去的
作者: Ayukawayen (亞布里艾爾發芽>//<)   2016-09-30 20:35:00
還真的是這個喔 我想說如果有設定到應該會想到才是 XD
作者: leondemon (狗狗)   2016-09-30 22:23:00
XDDDD 人總是有犯蠢的時候... Orz

Links booklink

Contact Us: admin [ a t ] ucptt.com