我试图在Jquery中进行切换,但它并没有真正起作用......
这是我的代码:
$(document).keydown(function (event) {
var playPause = 0;
var keycode = (event.keyCode ? event.keyCode : event.which);
if (keycode == '80') {
switch (playPause) {
case 0:
angular.element('#playBtn').trigger('click');
playPause = 1;
break;
case 1:
angular.element('#pauseBtn').trigger('click');
playPause = 0;
break;
}
}
});
它并不像开关一样真正起作用,因为我只能按一下它就会启动,但它永远不会进入情况1,它会暂停。
我的开关错了吗?请告诉我如何解决这个问题。
这是整个代码:
$(document).keydown(function (event) {
var playPause = 0;
var keycode = (event.keyCode ? event.keyCode : event.which);
event.preventDefault();
if (keycode == '80') {
switch (playPause) {
case 0:
angular.element('#playBtn').trigger('click');
playPause = 1;
break;
case 1:
angular.element('#pauseBtn').trigger('click');
playPause = 0;
break;
}
}
if (keycode == '39') {
angular.element('#nextBtn').trigger('click');
}
if (keycode == '37') {
angular.element('#previousBtn').trigger('click');
}
});
答案 0 :(得分:3)
playPause
变量在本地范围内,而不是全局范围,因此始终从0开始。将var playPause = 0;
声明放在$(document)
行之前,它应该有效。