• ベストアンサー

違いについて

(1)<a href="javascript:×××> (2)<a href="JavaScript:void(0)" onClick="×××;> (3)onClick="×××();" (4)onClick="JavaScript:×××();" と言うよつのスクリプトの記述方法があるんですが 一つずつどういう違いがあるのか?教えてもらいたい です。あと!参考になるサイトがありましたらよろ しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

(1) リンクがクリックされた時に(リンクに移動する代わりに)指定したスクリプトを実行する。 (2) リンクがクリックされた時に、スクリプトを実行する。 実行が終わった後、指定されたリンクに移動してしまう場合があるので、実行結果が無効(void)になるスクリプトを実行する (3) オンクリックイベントが発生した時に呼び出される関数が呼び出される。 (4) http://okwave.jp/kotaeru.php3?q=1785291 を参考にして下さい。 まとめると IEの場合、スクリプト言語を特定する動作をするようだが、そのような既定はなく、通常スクリプト言語としてjavascriptが想定されているので、javascriptとして評価した場合には、"javascript:"部分はラベルとして評価されるがそれ以上の効果はないので(3)と変わらない。

その他の回答 (2)

回答No.3

<a href="javascript:×××> は環境によってはうまくJavaScriptが走らないことがあります(古いネスケ等)。 よくウェブで見るのは <a href="#" onClick="×××()"> 私がよく使うのは <a href="JavaScript:void(×××())"> ↑は今のところ不都合を感じません

  • steel_gray
  • ベストアンサー率66% (1052/1578)
回答No.2

BLUEPIXYさんの解説に加えて <a href="~~" リンクとして機能する場合にhrefの内容を行う onClick="~~" マウスでクリックした時に-以下同- 後者はキーボードで操作した場合には機能しない場合があるので同様にonkeypress="~~"も一緒に記述しておくとベター・・・と、いわれたりするけど大抵のブラウザはonClickだけであってもキーボードでの操作にも対応しているようです。 なお、(3)や(4)がリンク以外のキーボードのTABキーで移動しないオブジェクトに使われている場合はほんとにマウスでしか操作できないので幅広い利用者を想定するようなページでは使わない方がよいようです。

関連するQ&A