为什么这不起作用?
var holdingctrl = false;
$(document).keydown("q",function(e) {
if(holdingctrl == true)
alert("Holding CTRL and pressing Q: Success.");
e.preventDefault();
});
$(document).keyup("q",function(e) {
holdingctrl == false
});
下面这个例子很好用,但我上面做错了什么?
$(document).keyup("q",function(e) {
alert("ONLY pressing Q: Success.");
});
答案 0 :(得分:2)
你需要一种方法来确定当前是否正在按下控件(e.ctrlKey) - 这应该适合你:
$(document).keyup(function(e)
{
if (e.ctrlKey && e.keyCode == 81)
{
alert("CTRL+Q Pressed");
}
});
答案 1 :(得分:1)
我不完全确定您要对此代码段做什么,但您可以使用event.ctrlKey
属性检查是否按下 ctrl :
$(document).keydown(function(e) {
if (e.ctrlKey && (e.keyCode == 81)) { // ctrl + q
alert("Pressing Q and ctrl: Success.");
}
});
答案 2 :(得分:1)
取决于你想要完成的任务。
情侣笔记:
keyup
处理程序没有对==
比较做任何事情。您可能打算使用=
作业。$(document).keyup( { theChar:"q" }, function(e) {
holdingctrl = false;
});