簡體   English   中英

為什么在函數名稱之前需要寫“ javascript:”?

[英]Why do I need to write “javascript:” before a function name?

如果要使用外部Javascipt函數(例如“ functionname()”),請參見以下示例:

<from onSubmit="javascript: funtionname()" >
</form>

為什么有時需要在函數名稱前寫javascript :?

在處理程序( onclickonchange等)中,您不必使用前綴。 對於這些,已經期望使用Javascript,並且前綴將被解釋為標簽,並且無效。

例如,如果要在href屬性中執行Javascript, 需要前綴“ javascript:”。 否則,該值將被解釋為URL。

但是,一般而言,應避免這種做法,因為它與不干擾Javascript策略的行為相矛盾。

javascript:表示法是URL方案,可以在需要URL的任何地方使用。 據我所知,盡管瀏覽器似乎支持將URL傳遞給事件處理程序是不正確的(至少根據HTML5規范)。 您應該指定一個有效的函數或將null指定為事件處理程序。 瀏覽器可能將此javascript前綴解釋為標簽,盡管從技術上講不允許這樣做。

你不知道

您將只需要編寫javascript:當您僅使用url類型標記(例如: hrefsrc )時,指定該字符串需要評估javascript代碼。

例:

<a href="javascript: doSomething();">
    My link is a javascript function doSomething()
</a>

您可以:

<form onSubmit="doSomething();">
    When submit the form, will ran doSomething, 
    if returns false will cancel the form submission
</form>

無需在處理程序中執行此操作。 它僅用作類似URL的方法中的協議,例如:

<a href="javascript:funtionname()">Click here</a>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM