我創建了一個Greasemonkey的腳本替換頁面功能:在Chrome中通過腳本替換頁面功能?
(function() {
var oldFunc = func;
func = function() {
oldFunc();
// other stuff
};
)();
我一直打算這個腳本在這兩個Gresemonkey和Chrome的工作和閱讀過Chrome不支持unsafeWindow
,所以已經注入腳本到頁面的功能轉換爲字符串,並使用setTimeout
:
setTimeout("(function(){var old=func;func=function(){old();/*other stuff*/}}())", 0);
這工作得很好的Greasemonkey的,但讓我在Chrome絕對沒有。它顯然不是射擊,但日誌中也沒有出現。我已經嘗試了許多其他注射方式,但無法獲得任何工作。 (爲了測試,我還增加了alert()
到函數的頂部。)
setTimeout(..., 0)
- 沒有- 運行在範圍內的功能,無需注射入頁 - 沒有警報,但「FUNC不什麼
document.body.addEventListener("load", ...)
- - 沒有什麼
所有這些都是與@run-at document-end
控制檯
document.href = "javascript:..."
定義」。 不幸的是,這是我的第一個Chrome用戶腳本,即使經過一個小時左右的谷歌搜索和撥動搜索引擎,我也不知道如何調試它。任何幫助?
實際腳本,目前在Greasemonkey的工作:http://pastebin.com/HtLVjYHg