通常のクリックでは1つの操作を行い、シフトクリックでは別の操作を行うonclickハンドラを作成するにはどうすればよいですか?onclickハンドラでは、シフトが押されたかどうかをどのように検出できますか?
17
A
答えて
39
clickイベントのshiftKeyプロパティを見ることができます。
window.addEventListener("click",
function(e) {
if (e.shiftKey) console.log("Shift, yay!");
},
false);
<p>Click in here somewhere, then shift-click.</p>
2
DOMから発射されたイベントは、shiftKey
(または同等)を含有するべきイベントが発生したときに、シフトキーの状態を示すプロパティ。例えば、を参照されたい。例としてhttps://developer.mozilla.org/en/DOM/event.shiftKey。
YUI、Prototype、jQueryなどのJavaScript/DOMラッピングライブラリを使用している場合は、実装上の相違は問題にならないはずです。
3
関数のパラメータとしてevent
を渡す必要があります。他のパラメータも渡すことができます。
<html>
<head>
<script type="text/javascript">
function doSomething(event, chkbox)
{
if (event.shiftKey)
alert('Shift key was pressed while picking ' + chkbox.value);
else
alert('You picked ' + chkbox.value);
}
</script>
</head>
<body>
<h3>Pick a Color</h3>
<input type="radio" name="myColors" onclick="doSomething(event, this)" value="Red" /> Red<br/>
<input type="radio" name="myColors" onclick="doSomething(event, this)" value="Green" /> Green<br/>
<input type="radio" name="myColors" onclick="doSomething(event, this)" value="Blue" /> Blue<br/>
</body>
</html>
関連する問題
- 1. テキストフィールドのキーボードでどのキーが押されたかをどのように検出できますか?
- 2. Reactアプリケーションがサーバー上でレンダリングされたかどうかをどのように検出できますか?
- 3. QWebViewでマウスボタンが押されたかどうかを検出する方法は?
- 4. シフトが解除されたかどうかを検出する方法は?
- 5. php rename()が正常に実行されたかどうかをどのように検出できますか?
- 6. (VB.net)キーが押されたかどうかを検出しますか?
- 7. F15が押されたかどうかはどのように判断できますか?
- 8. nservicebusでハンドラの検出はどのように行われますか?
- 9. どのようにフルスクリーンアプリケーションがウィンドウで実行されているかどうかを検出できますか?
- 10. シフトキーがCで押されたときはどうすれば検出できますか?
- 11. Windowsキーが押されたかどうかを検出する方法は?
- 12. 戻るボタンが押されたときにオプションメニューが表示されるかどうかを検出します。
- 13. キーボードでどのキーが押されたかはどのように判断できますか? C++
- 14. emacsが "-Q"で始まったかどうかをどのように検出できますか?
- 15. htmlインラインonclickハンドラをバインドするにはどうすればよいですか?
- 16. lazarusでどのtdbnavigatorボタンが押されたかを検出
- 17. Mac上でC#を使用してスペースバーが入力/押されたかどうかを検出するにはどうすればよいですか?
- 18. 通知ではいまたはいいえが押されたかどうかを検出する方法
- 19. 変更されたメモリデータをどのように検出できますか?
- 20. 端末でキーが押されたかどうかを検出する方法はありますか?
- 21. node.jsでキーが押されたかどうかを検出するにはどうすればよいですか?
- 22. iOSでテキストラベルが押されたかどうかを検出するにはどうすればよいですか?
- 23. Socket.IO emit()が送信されたが、どの.on()ハンドラでも受信されなかった場合、どうすれば検出できますか?
- 24. MacでRetinaディスプレイがJavaから検出されたかどうかを検出するにはどうすればよいですか?
- 25. サークルをクリックしたときにshitfKeyが押されているかどうかを検出します
- 26. ユーザーがスペースバーに入ったかどうかを検出するにはどうすればよいですか?
- 27. rel = "noreferrer"サポートはどのように検出できますか?
- 28. GAEはどのようにタスクキューの正しいハンドラを検出しますか?
- 29. どのボタンが押されたかを検出する
- 30. どのキーが押されたかを検出する方法