CSS HTML gallery 对键盘做出反应
css HTML gallery react to keyboard
我最近做了一个基本的html/css画廊,它很实用,带有下一个/上一个按钮的桌子。问题是我想让它响应键盘。就像如果有人点击键盘上的"左"按钮一样,它应该在上一张照片上,如果它点击"右"按钮,则进入下一页。如果你能用尽可能少的javascript/jquery来制作它,我会很高兴。我在谷歌上搜索了类似的东西,但我没有找到!如果您需要我网站的任何代码,请告诉我。请帮忙!
您可以使用
.on()
和keydown
事件捕获键盘交互,并决定在返回值后执行的操作,例如:
$(document).on("keydown", function (e) {
e.preventDefault();
var code = e.which || e.keyCode;
console.log(code)
if (code == 40) {
// down arrow pressed : do something
console.log("down arrow pressed")
}
});
参见 JSFIDDLE
导航箭头的键盘映射为
// 37 = left arrow
// 38 = up arrow
// 39 = right arrow
// 40 = down arrow
编辑:为了避免过度使用if
else if
else
,您可以使用switch
(性能更好),例如:
$(document).on("keydown", function (e) {
e.preventDefault();
var code = e.which || e.keyCode;
switch (code) {
case 37:
console.log("left arrow pressed")
break;
case 38:
console.log("up arrow pressed")
break;
case 39:
console.log("right arrow pressed")
break;
case 40:
console.log("down arrow pressed")
break;
default:
return false
}
});
请参阅更新的 JSFIDDLE
肯尼迪的回答是正确的,但我稍微扩展了一下
$(document).on("keydown", function (e) {
var code = e.which || e.keyCode;
if (code == 40 || code == 39) { // down & right
// replace selector with your button id/class
$('.btn-next').click();
} else if (code == 38 || code == 37) { // up & left
// replace selector with your button id/class
$('.btn-previous').click();
}
});
该代码模拟单击下一个/上一个按钮,因此您可以放置单击或仅按一次键时应该发生的任何代码。
相关文章:
- 移动HTML输入文本框在提交时隐藏软键盘
- HTML按钮的作用类似于从键盘按下的键,并在某些对象或整个网站上起作用
- CSS HTML gallery 对键盘做出反应
- 是否覆盖网站上文本输入区域的默认移动设备键盘?(HTML/JS/jQuery)
- Html通过jquery/javascript在iphone上保持键盘可见
- 在html输入元素的焦点上触发数字键盘
- 使用蓝牙扫描仪/键盘在iOS/ASafari上收听HTML/JavaScript中的按键,无需关注字段
- 隐藏 iPad 键盘时,即使在重置后也会预先填充 HTML 表单字段值
- 显示 HTML 字段的 Android 软键盘,即使连接了输入设备
- HTML/Javascript:将键盘笔划输出到 URL 参数
- 使用电子邮件键盘以 html 形式在移动设备上输入
- 使用键盘 HTML 时 WebView Focus 的 iOS 7 问题
- 用html键盘输入
- "禁用“;(灰色文本,没有鼠标/键盘)jQueryUI小部件和容器中的常规HTML
- 对于html输入,Android键盘默认为大写优先
- iOS5 Safari:键盘不会隐藏在主屏幕的HTML应用程序中
- Javascript:“change"在Firefox中对html选择元素使用键盘时不会触发的事件
- HTML:监听输入的所有更改,而不仅仅是键盘驱动的更改
- 当我点击html输入时,禁用手机键盘的显示
- 跳过数字键盘输入按钮与javascript或html