你可以在这里看到我的项目 –
https://www.inluxphoto.com/custom/jsgallery/index.php
我试图让左右箭头键移动幻灯片。 我能够完全遵循jqueryfordesigners.com首页上的说明,让它在所有浏览器中运行(对不起,我只允许一个链接)。
但是,在动画完成之前,必须将键盘解除绑定,因此用户无法快速双击键,这会破坏节目。 这让我有了以下function –
function keyCommands() { //Bind Keys according to keyAssignments function keyCommandBind() { $(document.documentElement).bind('keyup', keyAssignments) } //Bind functions to specific keys function keyAssignments() { if (event.keyCode == 37) { leftArrow(); } if (event.keyCode == 39) { rightArrow(); } if (event.keyCode == 32) { spaceBar(); } } function leftArrow() { //unbind, do stuff, rebind } function rightArrow() { //unbind, do stuff, rebind } function spaceBar() { //unbind, do stuff, rebind } keyCommandBind(); }
这适用于除Firefox和Camino之外的所有浏览器。 Firebug告诉我event
(即event.keyCode
)没有定义。 这是真的,它没有定义,我理解。 但是我不明白为什么,如果它没有定义,它是否适用于所有其他浏览器。
我该如何恰当地定义这个? 或者,我做错了吗?
任何帮助都将非常感谢,感谢您的时间!
尝试将keyAssignments声明为function keyAssignments(event) {
。 我不确定为什么它会在某些部分而不是其他部分工作,也许它们有一个保留变量,默认情况下会与keyup事件一起冒泡?
所以当我们在这里做按键监听器时,这是我们使用的一些代码:
$('.selector').keypress(function(e) { var key = e.which || e.keyCode || e.keyChar; //etc. )};
基本上有些浏览器称它为不同的东西。
需要了解更多jQuery教程分享keyup绑定在Firefox中不起作用,都可以关注jQuery技术分享栏目—计算机技术网(www.ctvol.com)!
以上就是jQuery教程分享keyup绑定在Firefox中不起作用相关内容,想了解更多jQuery开发(异常处理)及jQuery教程关注计算机技术网(www.ctvol.com)!)。
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/jquerytutorial/981875.html