我正在制作一个画廊并试图弄清楚如何编程箭头键来浏览画廊。
因此,按向左箭头将转到上一个图像网址:
function window.location = 'http://www.example.com/prevphoto.php';
按向右箭头将转到下一个图像网址。
function window.location = 'http://www.example.com/nextphoto.php';
更新(谢谢Haxxed指出我正确的方向) 这就是我所处的位置,但它不起作用。你能明白为什么吗?
$('body').keypress(function (e) {
if (e.which == 37) {
// Left Arrow Pushed
window.location = "/prevphoto.php";
} else if (e.which == 39) {
// Right Arrow Pushed
window.location = "/nextphoto.php";
}
});
答案 0 :(得分:2)
基本上你需要让body标签有一个按键事件(或使用jquery来创建一个事件监听器)然后只需检查键码(左箭头是37,右边是39)然后使用window.location来重定向页面。 All Key Codes
<head>
<script>
function e(event){
if(event.keyCode == 37){
//Left Arrow Pushed
window.location = "../prevphoto.php";
}else if(event.keyCode == 39){
//Right Arrow Pushed
window.location = "../nextphoto.php";
}
}
</script>
</head>
<body onKeyPress="e(event)" >
</body>
答案 1 :(得分:1)
尝试将脚本放在头标记中,然后修改body
以使用document
。
$(document).keypress(function (e) {
if (e.which == 37) {
//Left Arrow Pushed
window.location = "/prevphoto.php";
} else if (e.which == 39){
//Right Arrow Pushed
window.location = "/nextphoto.php";
}
});
答案 2 :(得分:1)
请参阅此相关答案:https://stackoverflow.com/a/5597114/380487
您需要收听keydown
事件,而不是keypress
事件。