我試圖檢測shift點擊與JavaScript,但由於某種原因,它只能在IE檢測換擋+使用jQuery點擊Chrome瀏覽器
.click(function (e) {
if (e.shiftKey) {
Rain();
}
});
這是在IE中爲我工作的代碼,我怎麼能在Chrome上檢測到它
我試圖檢測shift點擊與JavaScript,但由於某種原因,它只能在IE檢測換擋+使用jQuery點擊Chrome瀏覽器
.click(function (e) {
if (e.shiftKey) {
Rain();
}
});
這是在IE中爲我工作的代碼,我怎麼能在Chrome上檢測到它
我不認爲有一個定義的組合,但你可以自己做。 A(原油)例如:
<div id="someElement">
Click me for an alert!
</div>
<script>
var shiftPressed = false;
$(document).keydown(function(event) {
shiftPressed = event.keyCode==16;
});
$(document).keyup(function(event) {
if(event.keyCode==16){ shiftPressed = false; }
});
$('#someElement').on('click', function(e){
if(shiftPressed){
alert("Shift and click!");
}
else{ alert("Nope"); }
});
</script>
你可以通過在KEYDOWN是爲了儘量減少事件的數量轉變只綁定.keyup()
改進。您應該添加儘可能少的邏輯地外的if語句,作爲本次活動得到射擊很多
這應該很好地工作在Chrome。也許仔細檢查Rain()函數是否正在工作,並且事件處理程序是否正確應用。 – Drummad
該功能正常工作 – Yonathanb
您是否嘗試將事件記錄到控制檯,以便比較換檔時間是否停止,然後沒有按鍵?另外,如果這是不可能的,你可以嘗試只綁定點擊事件,一旦換檔停止,然後解除在換檔釋放時的點擊? –