2012-08-17 39 views
1

調用JavaScript代碼有多少種方式?首先出現的是典型的<script>標籤然後有一些標籤onload=""body標記的屬性,a標籤href="JavaScript:"form標籤onSubmit="JavaScript:"onclick=屬性。有幾種方法可以從html調用JavaScript代碼?

除此之外,我知道代碼也可以加載完畢後從javascript加載:Include javascript file in chrome console

但我更感興趣的代碼可以從HTML文檔運行的方式,是否有詳盡的列表:事件,屬性,...?

+0

我想你有我知道的所有方式 – Alnitak 2012-08-17 14:58:40

回答

5

這裏是事件在JavaScript中一個很好的列表:http://help.dottoro.com/larrqqck.php

至於如何觸發這些事件,你已經把所有我知道的基地。還有就是使用onload(以及類似的事件),以不同的方式,像這樣:

普通的JavaScript:

window.onload = function() { 
    //Do Stuff 
} 

的jQuery:

$(window).bind('onload', function() { 
    //Do stuff 
}); 

旁註:我會阻止在如href="javascript:"onsubmit="javascript:"之類的屬性中使用嵌入式JavaScript 。以這種方式將HTML嵌入到HTML中被認爲是不好的做法,因爲它會使您的代碼不易讀,並且可能更難以維護。

如果您需要偵聽事件,如onsubmit,我建議在JavaScript/jQuery的,或通過調用JavaScript函數,這樣的監聽這些事件:onsubmit="javascript:myFunction(parameter)",而不是用HTML寫所有的JavaScript內嵌的。這是我的兩分錢。

希望有幫助。

+0

爲什麼我問這是另一個原因,趨勢是現在與html5應用程序,假設你想自動檢查html5應用程序的一致性,你需要檢查這個地方代碼不建議是。還有很多理由來了解這些案例,包括實用和教學。 – 2012-08-17 15:13:55

+1

是的。很好的問題。 HTML5趨向於更多地使用JavaScript/AJAX技術。恕我直言,'onsubmit =「javascript:」'一直是處理JS事件的懶惰方式。我從來沒有見過現代的HTML5 Web應用程序使用這種方法來處理事件。越來越多的應用程序使用上面列出的jQuery方法,因爲許多現代HTML5網站使用jQuery等框架。所以,如果你正在尋找我的意見,我會堅持這種做法。 – 2012-08-17 15:19:18

2

我建議你看看this post。基本上,有一些提到服務器端調用這些函數來隱藏你的JavaScript從普通用戶。

+0

即使你不想隱藏你的JavaScript,它仍然是調用JavaScript函數/文件的另一種方式。 – Shabab 2012-08-17 15:04:16

+0

你想混淆,coleague向我顯示的這個例子讓我感到困惑:http://patriciopalladino.com/blog/2012/08/09/non-alphanumeric-javascript.html,用這個http://生成一個代碼patriciopalladino.com/files/hieroglyphy/並嘗試在遊戲機中評估,我很驚訝。 – 2012-08-17 15:25:42

+0

@Eduard Florinescu。是的:我親自尋找混淆,是的。但是,我也瞭解到服務器端腳本可以調用JavaScript文件/函數,這些文件實際上與這裏的主要問題有關。 – Shabab 2012-08-17 15:35:01

相關問題