2016-08-17 22 views
-1

リンクスタイルJavaScriptでボタン - 異なるオプション

<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;を使用しない場合は、別のものを使用する必要があります。


私はあなたが(など、button type="button"を使用してspanを使用して、href="#fragment"を使用して、理想的には、これらの断片は、意味のある作り)すべてでjavascript:擬似プロトコルを使用していないなど、他のオプションを持っていることに注意しますが、それISNあなたが尋ねたことはありません。 :-)

+0

'javascript'プロトコルbtwを省略できますか? – FrozenHeart

関連する問題