Javascript W3学校灯箱jquery添加键绑定
我正在尝试将keybinds添加到示例lightbox() 但尽管我尽了最大努力,我还是无法让它发挥作用。有人有什么想法吗 我知道我必须用JS来做,我知道左右键的密码。但是我对JS还很陌生,我不知道我应该在哪里做这个函数,以及如何让它连接到next/prev 然后,我希望能够让ESC作为一个关闭以及功能。 任何帮助都将不胜感激 原文:Javascript W3学校灯箱jquery添加键绑定,javascript,jquery,html,w3c,Javascript,Jquery,Html,W3c,我正在尝试将keybinds添加到示例lightbox() 但尽管我尽了最大努力,我还是无法让它发挥作用。有人有什么想法吗 我知道我必须用JS来做,我知道左右键的密码。但是我对JS还很陌生,我不知道我应该在哪里做这个函数,以及如何让它连接到next/prev 然后,我希望能够让ESC作为一个关闭以及功能。 任何帮助都将不胜感激 原文: function plusSlides(n) { showSlides(slideIndex += n); } 我的版本到目前为止,不知道我是否在正确的轨道上:
function plusSlides(n) {
showSlides(slideIndex += n);
}
我的版本到目前为止,不知道我是否在正确的轨道上:
function plusSlides(n) {
window.onkeydown = keydown;
function keydown(e){
if(e.which == 37 && next)
}
showSlides(slideIndex += n);
}
从原文中得到了想法:
<a class="prev" onclick="plusSlides(-1)">❮</a>
<a class="next" onclick="plusSlides(1)">❯</a>
})
奇怪的是,他无法逃避工作。我也试过使用keyup
document.onkeydown = function (e) {
e = e || window.event;
if(e.keyCode === 39) {
showSlides(slideIndex +=1);
} else if(e.keyCode === 37) {
showSlides(slideIndex -=1);
} else if(e.keyCode === 27) {
closeModal();
}
};
这是可行的,它不能进入函数内部,因为您希望始终捕获实际的按键。您还需要做一些事情,比如在捕获按键之前确保模式实际上是打开的,否则每次有人在您的站点上键入一个键时,代码都会运行
对于记录46是句点,44是逗号“if(e.which==37&&next)”后面应该跟一个语句,但该语句不存在。我尝试过你的版本,它只使用句点和逗号,但当我尝试使用其他键时。这是行不通的。我试过37岁,39岁,甚至27岁。但它不起作用…是的,很抱歉它应该是onkeydown,现在试试。我编辑了答案现在37和39都成功了。但我怎样才能逃出去工作呢?它说27表示转义,但当添加另一行代码时,它与elseif语句完全相同,并将27与closeModel()一起作为它的事件。它不会起作用。它对我来说非常好,见更新的答案,你就是这么做的吗?我在他们的编辑器里试过了,效果很好。我发现了问题所在。代码中有一点c。。所以它是键码而不是键码。。。英雄联盟
document.onkeydown = function (e) {
e = e || window.event;
if(e.keyCode === 39) {
showSlides(slideIndex +=1);
} else if(e.keyCode === 37) {
showSlides(slideIndex -=1);
} else if(e.keyCode === 27) {
closeModal();
}
};