我有一个包含滑块的iframe。滑块允许用左/右箭头键在图片之间导航,但如果页面上有水平滚动,则页面也会通过左/右箭头滚动。有没有什么办法来防止页面滚动,但不是在iframe中的幻灯片之间导航。 的代码看起来是这样的:防止滚动页面的左/右按钮
if (e.keyCode === 39) {
next();
}
if (e.keyCode === 37) {
prev();
}
感谢。
我有一个包含滑块的iframe。滑块允许用左/右箭头键在图片之间导航,但如果页面上有水平滚动,则页面也会通过左/右箭头滚动。有没有什么办法来防止页面滚动,但不是在iframe中的幻灯片之间导航。 的代码看起来是这样的:防止滚动页面的左/右按钮
if (e.keyCode === 39) {
next();
}
if (e.keyCode === 37) {
prev();
}
感谢。
你应该以终止事件的默认行为适用e.preventDefault();
。
某种
$(document).on("keypress", function() {
if (e.keyCode === 39 || e.keyCode === 37) {
return
}
});
似乎没有工作。我应该分别针对iframe和文档吗? – user1853892 2013-03-01 09:23:35
您需要在外部文档上使用$(document).on(“keypress”)函数,以及您在iframe中指定的另一个按键功能。此外iframe应该专注,所以按键可以在那里工作 – Sergio 2013-03-01 09:27:33
这将防止页面滚动和iframe中的导航,但我只需要在页面上,但不是iframe – user1853892 2013-03-01 09:22:48
,所以你根本不理解它。它所做的是禁用浏览器的默认行为。为了使框架滚动,你需要将next()和prev()添加到你触发e.preventDefault()的同一代码中。 – GottZ 2013-03-01 09:28:23
我的理解很好,做的和你写的完全一样,但页面仍然滚动。 – user1853892 2013-03-01 09:42:58