2012-09-29 39 views
-2

說我有本地主機/網站/ index.php的一個JavaScript函數和一個按鈕:通過使用第三方javascript執行文檔的JavaScript功能?

<html> 
<head> 
    <meta charset="utf-8" /> 
    <title>Page Title</title> 
<script type="text/javascript"> 
    function my_function(){ 
     alert('Hello eveeryone!'); 
    } 
</script> 


</head> 

<body> 

<button type="button" onclick="my_function();" />Here is my button</button> 

</body> 
</html> 

有沒有點擊按鈕,執行創建my_function()的方式 - 通過使用某種書籤或相似類型的在瀏覽器中駐留javascript或其他任何不意味着點擊button-default與文檔的javascript交互的東西?

編輯:問題 更好的解釋: 我可以使用localhost /網站/運行script.php觸發上述創建my_function駐留在本地主機/網站/的index.php?

+0

有點含糊......你想完成什麼? – Guffa

+0

我想你說的是用戶腳本 – user123444555621

回答

0

您可以用身體onload功能:

<body onload="my_function();"> 
0

您可以使用jQuery觸發。

$('button').trigger('click') 

該按鈕的onclick處理程序被調用。 (實際上所有按鈕的onclick處理程序都被調用,因此可能需要爲特定按鈕創建一個類或ID以將其作爲目標)

0

我假定網頁不是您的,因此您無法直接修改它。所以,如果你有一個在頁面上下文(bookmarklet或插件或類似的東西)中執行javascript的方法,並且你知道點擊處理函數的名字是什麼,那麼你可以直接執行click處理程序:

my_function() 

編輯:因爲現在它似乎從你實際上是在問一個關於自己的網頁的安全性問題的意見。

您無法阻止在您自己的網頁中執行javascript函數。人們可以通過多種方式從自己的瀏覽器向您的頁面注入代碼,以便在您的網頁中調用全局可訪問的任何內容。你無法阻止這一點。可能會讓直接調用事件處理程序變得更加困難,但這隻會使它稍微工作一些,但不會阻止它。

安全性必須在您的服務器上實現 - 它不能在網頁中實現。瀏覽器客戶端網頁不是一個安全的環境。它可以自由修改。無論您試圖保護什麼,都必須在服務器上實施。

+0

jfriend00你能否讓你的答案更清楚些?我很擔心我的網站安全 - 我有JavaScript功能,不應該在我的網站上下文中執行,如果可能的話,我應該改變一些東西。我想知道如何完成這種執行。謝謝。 –

+0

@Miloshio - Geez。如果這是關於您自己的網頁安全性的問題,那麼您應該在問題中加以說明。然後你會得到關於安全性的答案,而不是你所做的。爲什麼人們沒有說明他們實際存在的問題/問題? – jfriend00

+0

@Miloshio - 我在關於網頁安全的回答中增加了一些新的信息。 – jfriend00