2012-06-04 7 views
7

のhref属性の更新"javascript :;" HTMLのアンカータグ

以下のコードは何を意味して行うのですか?動作させるにはJavaScriptが必要ですか?

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

更新

は、それは何もしませんし、リンクを作り、無操作でどこかに行くことにaタグのデフォルトの動作を置き換えることを意図している?:

<a href="">Do Somthing</a> 
+1

AFA IKそれは何もしないことを意味する – Alex

+1

なぜそれを試してみませんか? –

答えて

13

を起こりませんので、あなたが任意の関数を指定していないここ<a> tag.Butを使用して呼び出されます「JavaScriptを:」へのhref属性のスタートとして、リンクはjavascriptエンジンに、残りの文字列をjavascriptとして解釈するように指示します。この場合、厳密な解釈では構文エラーとなります。これは、事実上、閉じたセミコロンを持つ空のjavascript行であるためです。このように:

; 

ほとんどのブラウザではエラーが発生しませんが、リンク上のjavascriptは古い構文であり、可能な限り避けてください。あなたは何もしないリンクとして安全に使うことができますが、私はそれをお勧めしません。

あなたが何もしないためのリンクをしたい場合は、あなたの代わりにこれを使用することができます:

<a href="#">Link</a> 
<a href="javascript:void(0);">Link</a> 
<a href="javascript:return false;">Link</a> 

を空のhrefの文字列を使用するには、ブラウザが相対リンクとしてそれを解釈ようになります。上位のドメインやIPアドレスなどのプロトコルや識別子で始まらないURLは、相対リンクとして扱われます。たとえば、ドメイン"google.com"のリンク"index.htm"は、リンク"google.com/index.htm"を作成します。同じように、href文字列""はリンク"google.com/"を作成し、空のhref文字列によってブラウザが新しいページに移動します。

通常は、href属性を指定しないと、リンクがポインタカーソルを表示したり、リンクのように書式を設定したりしません。これは、ハッシュを使用してリンクできる「アンカー」要素として使用できます。 URL内の文字。あなたはこのように、フォーマットするためのリンクを強制するためにCSSを使用することができますしかし<a id="an_anchor">This is an anchor</a>

CSS:

a { 
    color: #00c; 
    text-decoration: underline; 
    cursor: pointer; 
} 

をHTML:

このような "http://google.com/#an_anchor"これに類似したアンカーに行くことができますように
<a>This is a link.</a> 

例:http://jsfiddle.net/J3RfH/

+0

これらの3つのアンカーは、ページをページの先頭にジャンプさせますか? – Pingpong

+0

'javascript:;'/';'は間違いなく構文エラーではありません。 –

0

以下に等しく、本質的にクローキング不可能である。

5

ノーオペレーションです。

他の一般的な方法はhref="#"ですが、ページ上部にジャンプしてアドレスバーに#が表示されないようにするには、onclickイベントでreturn falseを入力する必要があります。

リンクがJavaScriptの有無にかかわらず、つまり<a href="/whatever" onclick="dowhatever(); return false;">のように動作するようにすることをお勧めします.JavaScriptを使用していない人は、古典的な方法でページを開くだけです。 JSでやった。

何かがすべてではJavaScriptなしで動作するようになっていない場合、すなわち、有用なhref値がない、すべてが、(cursor:pointerそしておそらく下線)適切なスタイルでspanを使用するにaタグを使用していないことを検討してください。

0

あなたは:後、いくつかの関数を指定するかどうか、それは何も使用

関連する問題