• ベストアンサー

違いについて

(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

  • 枠より大きな画像を部分的に表示javascript

    縦1000px 横1000pxの画像(test.jpg)があり、この画像は、5×5で25枚の 縦200px 横200px の画像がつながって一枚となっています。 <img id="testplace"src="test.jpg" width="200px" height="200" /> と指定し(この時には、一番左上の200pxの画像が見えている)、その下に <a href="javascript:void(0)" onclick="testscript(0,0)">1番目</a> <a href="javascript:void(0)" onclick="testscript(0,200)">2番目</a> <a href="javascript:void(0)" onclick="testscript(0,400)">3番目</a> <a href="javascript:void(0)" onclick="testscript(0,600)">4番目</a> <a href="javascript:void(0)" onclick="testscript(0,800)">5番目</a> <a href="javascript:void(0)" onclick="testscript(200,0)">6番目</a> <a href="javascript:void(0)" onclick="testscript(200,200)">7番目</a>   ・   ・   ・ <a href="javascript:void(0)" onclick="testscript(800,600)">24番目</a> <a href="javascript:void(0)" onclick="testscript(800,800)">25番目</a> とクリックする場所を設けて、それぞれをクリックすると、「testplace」に各々の200pxずつの画像が表示されるようにするスクリプト「testscript」を作成したいと考えています。 この方法だと画像は複数いらず1枚で済みます。CSSで背景画像を移動させる方法は使用しないで、実装できますでしょうか。 よろしくお願いいたします。

  • PHPとJavaScriptで...

    PHPで以下のようなリンクを生成し、 <form name="hoge" method="post"> <input type="hidden" name="hogehoge"> </form> <a href="javascript:void(0)" onClick="submit('0')">あ</a> <a href="javascript:void(0)" onClick="submit('1')">い</a> <a href="javascript:void(0)" onClick="submit('2')">う</a> <a href="javascript:void(0)" onClick="submit('3')">え</a> <a href="javascript:void(0)" onClick="submit('4')">お</a> POSTで受け取ったデータを再びPHPで使用したいのですが、 (同一ページ内で) 色々調べてみたのですが、いまいちわかりません。 JavaScriptの部分をどのようにしたらよいか、また根本的に間違っていたらどのように変えればよいか、 教えてください。 m(_ _)m

    • ベストアンサー
    • PHP
  • htmlTextで書き出したテキストからjavascriptへ

    flashCS4 AS3.0で作業しています。 htmlTextでダイナミックテキストに <a href="javascript:void(0)" onclick="hoge();">テスト1</a> と書き込んでます。 そのswfが貼付けてあるhtmlに書いてある <script type="text/javascript" language="javascript"> <!-- function hoge(){ window.alert('ボタンを押しましたね'); } // --> </script> を動かしたいのですがウマく行きません。 どなたかいい方法しっている方いませんか?

  • サブウインドウを開くときのファイル名について

    サブウインドウを開くときの記述ですが、 <a href="javascript:void(0)" onClick="window.open('http://○○.htm','subwin','・・・・ 私が人から教えていただいたのはここにURLを記述するというやりかたなのですが、ここにURLではなくて、単純に○○.htmというように記述するやり方はないでしょうか? できるだけ簡単にしたいのですが・・・ よろしくお願いいたします。

  • a.href の href を有効か無効にする選択

    <script language="JavaScript"> function fa(obja){ if(confirm())obja.href="a.html" else{obja.href=eval("javascript:void(0)") inp.value=0//↑がうまくいかない。hrefを無効にしたい。 } } function fb(objb){ if(confirm())window.location="a.html" else{inp.value=0//↑がvoiv(0)によって無効で動作しない。 } } </script> <a href=a.html>りんく</a><a href=javascript:voiv(0) onClick=inp.value=0>ばりゅ</a> <br>↑と同じようなことを1つのaタグでやりたい<br> <a href="" onClick=fa(this)>失敗A</a><br> <a href=javascript:voiv(0) onClick=fb(this)>失敗B</a><br> <input id=inp> 選択によってクリックのアクションを変更したいんだけど、 1方のアクションはリンク、もう1方はJavaScriptです。 ボタンとかならできるんだけど、クリック済みかを 色分けしたいからaタグでやりたいんです。 よい方法を教えてください。

  • javascriptに詳しい方

    下のスクリプトで見るべきページが二つ以上ある場合どのように記述すればいいのでしょうか? javascriptに詳しい方よろしくお願いいたします。 <html> <head> <script language="JavaScript"> <!-- var isClicked = false; //--> </script> </head> <body> <A href="check.html" onClick="isClicked = true">見るべきページ</a><br> <A href="test.html" onClick="if (!isClicked){ alert('先に見るべきページをクリックしてください'); return false; }">A</a><br> </body> </html>

  • JavaScript document.writeについて

    <ul id="font-size-change"> <li><a href="javascript:void(0)" onclick="setActiveStyleSheet('default'); return false;" />標準</a></li> <li><a href="javascript:void(0)" onclick="setActiveStyleSheet('large'); return false;" />大</a></li> </ul> 上記を、JavaScriptの「document.write」を使って表示しようと、下記のコードを書きました。 function fontSizeChange(){ document.write('<ul id="font-size-change">'); document.write('<li><a href="javascript:void(0)" onclick="setActiveStyleSheet'); document.write("('default'); "); document.write('return false;" />標準</a></li>'); document.write('<li><a href="javascript:void(0)" onclick="setActiveStyleSheet'); document.write("('large'); "); document.write('return false;" />大</a></li>'); document.write('</ul>'); } とっても効率が悪い記述だと思うのですが、 もっとシンプルで効率の良い書き方はないでしょうか。 よろしくお願いします。

  • 文字サイズ変更のjavascriptが動かない

    現在、サイトを文字サイズ変更できるようにトライしているのですが、javascriptは全くの初心者なのでよくわかりません。 ページによって動かないので、何がいけないのかアドバイスお願いします! 動くのは http://○○.jp/○○.html 動かないのは http://○○.jp/○○/○○.html のページです。 以下の記述は動かない方に設定しているものです。 ************* javascript ************* function imgver(num){ var element =document.getElementById("fontSize"); var writeHtml = ''; if( num == 0){ writeHtml +='<!-- --><li><a href="javascript:void(0)" onclick="font(\'16px\');imgver(0)"><img src="../common/l.png" width="25" height="26" border="0" /></a></li><!--'; writeHtml +=' --><li><a href="javascript:void(0)" onclick="font(\'12px\');imgver(1)"><img src="../common/m.png" width="25" height="26" border="0" /></a></li><!--'; writeHtml +=' --><li><a href="javascript:void(0)" onclick="font(\'9px\');imgver(2)"><img src="../common/s.png" width="25" height="26" border="0" /></a></li><!-- -->'; } else{ writeHtml +='<!-- --><li><a href="javascript:void(0)" onclick="font(\'16px\');imgver(0)"><img src="../common/l.png" width="25" height="26" border="0" /></a></li><!--'; writeHtml +=' --><li><a href="javascript:void(0)" onclick="font(\'12px\');imgver(1)"><img src="../common/m.png" width="25" height="26" border="0" /></a></li><!--'; writeHtml +=' --><li><a href="javascript:void(0)" onclick="font(\'9px\');imgver(2)"><img src="../common/s.png" width="25" height="26" border="0" /></a></li><!-- -->'; } element.innerHTML = writeHtml; } ************* html ************* <ul id="fontSize"><!-- --><li><a href="javascript:void(0)" onclick="font('16px');imgver(0)"><img src="../common/l.png" alt="大" width="25" height="26" border="0" /></a></li><!-- --><li><a href="javascript:void(0)" onclick="font('12px');imgver(1)"><img src="../common/m.png" alt="中" width="25" height="26" border="0" /></a></li><!-- --><li><a href="javascript:void(0)" onclick="font('9px');imgver(2)"><img src="../common/s.png" alt="小" width="25" height="26" border="0" /></a></li><!-- --></ul> ******************************************** 画像は表示されるのですが、全く動きません。 よろしくお願いします!

  • php初心者です。シングルとダブルのクオーテーションが混在する下記のよ

    php初心者です。シングルとダブルのクオーテーションが混在する下記のようなスクリプトを、print関数でどのように書けば良いのでしょうか。ご教示下さい。 <a href="JavaScript:void(0)" onClick="imgwin('glass.jpg',240,180)">aaa</a>

    • 締切済み
    • PHP
  • javascriptにてonclickを無効

    javascriptにてonclickを無効にしたい 下記のように、onclickイベントキャンセルを書きましたが、 onclickのjavascriptが実行されます。 何かヒントはありませんか? <html> <head> <script language="JavaScript"> document.onclick = function(e) { event.returnValue = false; } </script> </head> <body> <a href="a.htm" onclick="alert('onclick');">onclick有り</a> <a href="a.htm">onclick無し</a> </body> </html> ※環境 Windows2000(sp4)+ie6(sp1)

専門家に質問してみよう