從我的經驗,我知道三種不同的方式來執行一個JavaScript函數,當用戶點擊一個鏈接當用戶點擊鏈接時執行某個功能的最佳方式是什麼?
使用鏈路鏈路
<a href="#" onclick="myfunction();return false;">click me</a>
使用
href
上onclick
屬性上<a href="javascript:myfunction();">click me</a>
請勿觸摸鏈接,盡一切在js
<a href="#">click me</a>
(在JavaScript中,我們將停止違約事件,並調用該函數)
哪一個更好?有什麼優點和缺點?
編輯刪除 「的javascript:」 與graceful degredation上onclick
不要在onclick中說「javascript:」。這會引入一個你不需要的標籤(用於'break','continue')。 – Thilo 2010-09-17 07:36:47
一般不建議不要觸及HTML *,因爲您將它放在示例3中,因爲如果您無法選擇正確的元素,則嘗試在Javascript中附加事件處理程序時會很麻煩。 – 2010-09-17 07:38:48
即使在執行方法3時,也可以使用'href'來爲非JavaScript用戶做些事情。如果這是一種對非JavaScript用戶沒有意義的行爲,那麼你可以使用javascript本身*生成*鏈接 - 這樣,唯一能看到它的人是能夠使用它的人 – Gareth 2010-09-17 07:41:42