这段代码在chrome和firefox上运行得很好。它只在IE10上搞砸了,我使用的是JQuery 1.11.1。在控制台中,如果您使用两个键,则似乎不会触发keyup。因此,如果我持有"alt“+ "a”,它只会在我释放它们时触发"a“键。在chrome和firefox中,两者都会被激活。我没有在早期版本的IE上测试10。而且我无法让JSfiddle正常工作,我不知道如何在JSfiddle中正确地使用函数.所以我很抱歉:但这是密码。(正在使用alt键)。
jQuery( document ).ready(function(){
var altKey = false;
function addCheckAlt(){
jQuery(document).bind("keydown", function(e){
if(e.keyCode === 18)
altKey = true;
});
jQuery(document).bind("keyup", function(e){
if(e.keyCode === 18)
altKey = false;
});
}
function checkIfAltKey(event){
if(altKey){
event.preventDefault();
altKey = false;
return false;
}
else{
altKey = false;
return true;
}
}
}HTML
<input
type="button"
class="btn btn-info helpBtn"
onclick="if(checkIfAltKey(event))alert('hi');"
value="Help"
accesskey="6"
title="Help (access key 6)"/>使用此代码时,只需使用alt +6,它将执行单击事件并单击按钮。如果有人能给我一个想法,如何在这一点上,这将是伟大的!!(它所做的只是如果按了alt键,那么它就不会执行警报)
发布于 2016-01-25 19:20:07
我通过在函数中添加下一段代码来使其工作:
$("#TextBoxName").keyup(function () {
debugger;
return true;
});希望它能帮助那些像我一样来到这里的人,解决同样的问题。这是在Chrome 47.0.2526.111和IE 11上工作的。
添加更多信息:无法从JsFiddle中提取代码,但以下是部分内容:
http://api.jquery.com/keyup/
<input id="testBoxName"
type="button"
class="btn btn-info helpBtn"
onclick=""
value="Help"
accesskey="6"
title="Help (access key 6)"/>
<br> <br />Type Here:<input type="text" id="textbox1"/>
<br><br>
Results
<br /><input type="text" id="textbox2"/>
<br /><input type="text" id="textbox3"/>
<br /><br /><br />
<div id="log"></div>脚本
$("#textbox1").keyup(function() {
var textinput = $('#textbox1').val().substring(0,8);
$('#log').append('<br />Handler for .keyup() called - ' + textinput);
$("#textbox2").val(textinput);
$("#textbox3").val(textinput);
});
$('#testBoxName').keyup(function() {
$("#textbox1").val("");
});检查结果是,当单击按钮,然后按下一个键,释放键后,第一个文本框将被清除。
https://stackoverflow.com/questions/24661678
复制相似问题