質問: checkCTRLKey; と言うのを別に作ると、なぜかきちんと止まります(「shiftKey」にも影響を及ぼしません)。 function mouseListener(evt){ ・・・これだけが本当にどうにもなりません。 「document.onmousedown=mouseListener」となっていますので、押した瞬間はアラートが出てウィンドウも当然開かないのですが、離した瞬間ウィンドウが開いてしまいます(当然と言えば当然ですが)。 document.onmousedown=mouseListener; document.onmouseup=mouseListener; と二つ並べるのも試しましたが、アラートが二つ出るだけでやはりウィンドウが開いてしまいます。 (ちなみに中クリックでリンクをクリックし、アラート小窓が出たときにその小窓の上でマウスを離すと別ウィンドウでは開かないようです) こんな感じなのですが、どうにかなりますでしょうか。 かいつまんで言うと「IEで、中ボタンでリンクをクリックしても別タブ・別ウインドウで開かないようにしたい」と言うところです。 どうぞよろしくお願いいたします。
回答: 中ボタンでも`click`イベントが発生するみたいなので`click`の場合警告を出すのではなく、リンク先のページに`location.href`で同一windowで遷移させて`return false`してしまうのはどうでしょう