2011-08-29 68 views
0

當我加載特定的網頁時,我想調用其頁面中存在的Javascript函數。我可以使用javascript:TheFunction();的小書籤,但我想知道是否有更簡單的方法可以實現,無論是使用Chrome擴展還是其他方式。使用Chrome自動在頁面上調用JavaScript函數?

+0

你見過油脂猴子? –

+0

您也可以使用調試器控制檯,但我認爲您正在尋求自動化。鉻擴展將工作。請參閱:http://code.google.com/chrome/extensions/samples.html – doremi

回答

3

使用chrome,您可以直接安裝油猴腳本或獲取腳本處理程序插件Blank Canvas(我使用後者)。

+0

看起來這是對我來說最重的舉動,謝謝! – qJake

+0

很高興幫助:)它真的很容易使用和一個美妙的擴展(我使用它*所有*的時間)。 –

1

Chrome擴展程序在沙箱中運行,因此您無法直接從網頁代碼中調用函數。你必須使用javascript:fuction();並設置document.location,或者您可以使用回調到您自己的擴展來在頁面上創建腳本元素。看看這個傢伙是怎麼做的:

https://convore.com/kynetx/kbx-writing-durable-code/

我指的這個帖子,和上面的那個和下面的具體

var anewscript = document.createElement("script"); 
anewscript.type = 'text/javascript'; 
anewscript.innerHTML=' callback_tmp= function (mydata){ ' + 
' document.getElementById("someElement").onclick(mydata);' + 
'}'; 
document.getElementsByTagName("head")[0].appendChild(anewscript); 
-1

另外一種方式是修改的JavaScript功能,使它可以從[Chrome]調試控制檯全局訪問。

更改然後使用調試控制檯從例如

function foo(data) 

foo = function(data) 

功能,調用帶有屬性的方法所需

data = {my: "data"} 
foo(data) 
+0

這與我想要的沒有任何關係,我沒有說任何關於控制檯的東西。我想在我的擴展中加載頁面時注入並執行一些JavaScript代碼。你也晚了超過1年,我已經接受了答案。 – qJake

相關問題