2012-01-31 9 views

答えて

0

あなたは簡単な例があること、リンクのデフォルトの動作を防ぐためにJavascriptを使用できます。ただ、使用

<a href="#myanchor" onclick="return false;">link</a> 
+0

私はあなたのスニペットを使用するとdivのpositonは変更されません – Tomkay

+0

私はこのインラインjsが悪夢だとマークしました - – matpol

+0

明らかにそれはジャンプを止めることで仕事をしますが、起こってからイベントを停止します –

14

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

これを次のようにマークしました:http://stackoverflow.com/questions/2321469/when-do-i-need-to-specify-the-javascript-protocol – matpol

+0

event.preventDefault(); –

+0

nice ...ありがとう – mostafaznv

17

をこの問題の最もセマンティックと意味のあるアプローチは次のようになりJavaScript内からonclickイベントを処理します。理想的には、このファイルは別ファイルに格納するのが最善ですが、問題ファイル内のインラインスクリプトで十分です。ここでは、あなたがすでにjQueryのようなJavaScriptライブラリを使用している場合に、この問題に近づくことをお勧めします。

それはjQueryのを使用して選択することができますので、
があなたのアンカーへのid属性を含めるIDを割り当てます。

<a href="#anchor" id="mylink" title="Title Here">Link Text</a> 

のインラインJavaScriptのファイル/内からバインドクリックイベント
スクリプトには以下が含まれます:

$('#mylink').click(function(event) { 

    // This will prevent the default action of the anchor 
    event.preventDefault(); 

    // Failing the above, you could use this, however the above is recommended 
    return false; 

}); 

http://api.jquery.com/event.preventDefault/

+2

時にはジャンプを無効にして、ページリロードなしで#anchorを追加するなどの他のデフォルト動作を実行したいことがあります。 event.preventDefault()だけでは機能しません。 – Nicholas

関連する問題