我要做的是点击w,它会输出一个警告,说明'第一次警报',然后我希望能够再次点击w,它将输出'第二次警报'。
所以我在这里做的是创建了一个名为'a'的变量,我将其设置为0然后我有两个函数,一个名为firstAlert,另一个名为secondAlert,它们都将1加到'a'。
我创建了一个if语句来检查用户是否点击了w。在if语句中,我创建了一个switch语句,它检查'a'的值并根据'a'的值来运行某个case。
我的问题是,当我第一次点击w时,它将运行firstAlert()函数并输出“first Alert”。但是第二次单击w时第二个函数根本没有运行,在某些浏览器上,当我点击w时第一个函数继续运行。
代码:
$(document).ready(function() {
var a = 0;
function firstAlert() {
alert("first Alert");
a + 1;
}
function secondAlert() {
alert("second Alert");
a + 1;
}
$(document).keydown(function(key) {
if (key.which == 87) {
switch (a) {
case 0:
firstAlert();
break;
case 1:
secondAlert();
break;
default:
a = 0;
break;
}
}
});
});
答案 0 :(得分:2)
看起来你想增加一个。
尝试 a+=1;
(相当于 a=a+1;
)
答案 1 :(得分:2)
如果不更正其他代码,a++
会为您提供所需内容:
jQuery(document).ready(function($) {
var a = 0;
function firstAlert() {
alert("first Alert");
a++;
}
function secondAlert() {
alert("second Alert");
a++;
}
$(document).keydown(function(key) {
if (key.which == 87) {
switch (a) {
case 0:
firstAlert();
break;
case 1:
secondAlert();
break;
default:
a = 0;
break;
}
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
答案 2 :(得分:0)
您可能正在使用现代jquery版本(&gt; 3),此错误有时会发生,您应该将keydown事件函数更改为:
$(document).on('keydown', 'document', function (){
//Your code here
});
答案 3 :(得分:0)
试试这个
$(document).ready(function() {
var a = 0;
function firstAlert() {
alert("first Alert");
a+=1;
}
function secondAlert() {
alert("second Alert");
a+=1;
}
$(document).keydown(function(key) {
if (key.which == 87) {
switch (a) {
case 0:
firstAlert();
break;
case 1:
secondAlert();
break;
default:
a = 0;
break;
}
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>