修改頁面的DOM我試圖創建一個包含以下功能的瀏覽器擴展程序:通過鍍鉻extentsion
1當某個域的用戶訪問頁面此擴展將刪除一些延遲性肌肉痠痛的頁面。
2檢查所有圖像的大小,如果其中一個圖像的大小大於指定的大小,則該圖像將被設置爲指定的大小,當用戶單擊它時,圖像將調整到其原始大小。
現在,這是我做了什麼:
"content_scripts": [
{
"matches": ["http://*.xx.com/*"],
"js": ["res/js/jquery-2.0.3.min.js", "res/js/inject.js"],
"run_at": "document_end"
}
]
inject.js:
$(document).ready(function() {
$("xxx").remove();
$("img").each(....);
});
但是我遇到了一些問題:
1 jQuery庫在當地被稱爲是有任何想法從CDN源加載jquery?
2在頁面完全加載之前需要很長時間,這意味着要刪除的內容將長時間保持可見。
3頁面使用類似twitter的佈局,當用戶滾動頁面時,會加載更多內容。所以問題出現了。
我的inject.js
將在頁面加載完成後運行,所有已加載的圖像都將被處理。但是當更多的內容被加載時,新加載的圖像將不會被處理。
所以我不知道是否有一些事件像element_rendered
我可以捕獲?如果是的話,我可以這樣做我的工作:
xxx.events.addListener('element_rendered',function(ele){
if(shouldRemvoed(ele)){
//remvoe it.
} else if(isImg){
//check size......
}
});
這是可能的,或者是否有替代做我的工作?