我正在尝试将事件传递给按键处理程序上的jquery,但由于它在文档上,我想成为一个非常特定的处理程序,因为在页面上有多个使用此对象的实例。另外,我正在使用coffeescript
所以...
keyPress: (e)->
# handle key event
$(document).on 'keypress', (e)=>
@keyPress e
不起作用,因为我不希望它同时适用于所有实例。
我需要的是像
$(document).on 'keypress', @keyPress(event)
在传递事件时,我可以获得keyCode。
我也需要这个,所以如果我愿意,我可以关闭它,而不会影响任何其他实例
$(document).off 'keypress', @keypress
我确信答案比我意识到的要简单得多。 谢谢你的帮助
编辑:(也许这还不清楚)简而言之,我在页面上有多个轮播,我需要设置其中一个轮播以响应关键事件(左,右)
理想情况下,如果我可以专注于旋转木马然后使用键进行导航会很好,但如果不可能那么只需要1个旋转木马就可以对键进行响应。
问题出现在页面上有多个轮播时,第一个轮播将听众打开,下一个轮流将其关闭,或者它们都打开,当按下一个键时两个轮播都会移动
EDIT2: 我想我正在寻找
的.on()版本 $(document).keypress @keyEvents.bind(@)
EDIT3: 我想我仍然在寻找.on版本,因为我还需要能够将其关闭