2016-08-17 57 views
-1

是否有鏈接樣式的按鈕 - 不同的選擇

<a href="javascript:;"></a> 

<a href="javascript:void(0);"></a> 

之間有什麼區別?

我想有鏈接風格的按鈕,只需撥打點擊一些JS的功能,所以我執行以下操作:

$('<a>', { 
    'href': 'javascript:;', 
    text: 'Click me', 
    click: doStuff 
    }); 

我知道,它可以通過button標籤和CSS來實現,但是我認爲,這是更容易的解決方案。

+0

儘管使用'href =「#」'和在事件處理函數中調用'preventDefault()'的結果沒有什麼區別,它們會更加語義化。 –

+1

[**鏈接不是按鈕**](http://www.karlgroves.com/2013/05/14/links-are-not-buttons-neither-are-divs-and-spans/)保持網頁乾淨,使用正確的元素和**風格**它如何你想它看起來。不要採取非語義快捷方式。 –

+0

在創建元素時綁定點擊操作,根本不需要'javascript'協議。 –

回答

0

沒有任何功能差異,不,在點擊時不會做任何事情(除了觸發您對它們的任何點擊處理程序)。僞隨機協議javascript:必須是有效的JavaScript。 ;void(0)都是有效的JavaScript。

我可以忽略JavaScript協議btw嗎?

href的內容預計爲URL。如果您不使用javascript;僞協議,則需要使用其他內容。


我會注意到,你還有其他選擇,包括不使用javascript:僞協議在所有(使用button type="button",使用span,使用href="#fragment"和理想使那些片段有意義的,等等),但ISN你問的是什麼? :-)

+0

我可以忽略'javascript'協議btw嗎? – FrozenHeart