我正在尝试将键绑定添加到例如灯箱(link) 但是,尽管我尝试了,但我无法让它发挥作用。有任何想法的人吗?
我知道我必须在JS中这样做而且我知道左和右的键码。但我对JS很陌生,我不明白我应该在哪里做这个功能,以及如何让它连接到next / prev。
然后我希望能够让ESC作为一个接近的功能。 任何帮助将不胜感激。
原始版本:
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>
在这个社区的帮助下:
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();
}
};
奇怪的是,不会逃避工作。我也尝试过使用keyup。
答案 0 :(得分:0)
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是逗号