執行 JavaScript 的連結

只需使用 javascript:協議將文字作為 JavaScript 執行,而不是將其作為普通連結開啟:

<a href="javascript:myFunction();">Run Code</a>

你還可以使用 onclick 屬性實現相同的功能:

<a href="#" onclick="myFunction(); return false;">Run Code</a>

當點選 # 的連結時,return false; 是防止頁面滾動到頂部所必需的。確保包含你之前要執行的所有程式碼,因為返回將停止執行更多程式碼。

另外值得注意的是,你可以在主題標籤後面新增感嘆號 !,以防止頁面滾動到頂部。這是有效的,因為任何無效的 slug 都會導致連結無法在頁面上的任何位置滾動,因為它無法找到它引用的元素(帶有 id="!" 的元素)。你也可以使用任何無效的 slug(例如 #scrollsNowhere)來達到同樣的效果。在這種情況下,return false; 不是必需的:

<a href="#!" onclick="myFunction();">Run Code</a>

你應該使用這些嗎?

答案几乎肯定是否定的。使用像這樣的元素內聯 JavaScript 執行是相當糟糕的做法。考慮使用純 JavaScript 解決方案來查詢頁面中的元素並將函式繫結到它。聽一個事件

還要考慮這個元素是否真的是一個按鈕而不是一個連結。如果是這樣,你應該使用 <button>