【问题标题】:Bind escape key to instance?将转义键绑定到实例?
【发布时间】:2014-06-27 02:58:16
【问题描述】:

我一直在面板类中创建自己的幻灯片,到目前为止我真的很满意,但我想知道如何将转义键绑定到当前打开的面板?

我已经设置了我的插件的演示:

演示:http://jsfiddle.net/7PH9g/

我知道您可以像这样将事件绑定到 keyCode:

$(document).keyup(function(e) {
  if (e.keyCode == 27) { <DO YOUR WORK HERE> }   // esc
});

但是我怎样才能从转义键调用this.sliderClose?像这样访问类外函数的最佳方式是什么?

基本上,我想要一些我可以按一下退出键的东西,它会自动关闭顶部的面板。最上面的面板有一个类 infront,它们都有唯一的 id。但我无法弄清楚这一点。

【问题讨论】:

    标签: javascript jquery class events keycode


    【解决方案1】:

    我认为你可以这样做:http://jsfiddle.net/7PH9g/2/

     $(document).keyup(function(e) {
        if (e.keyCode == 27) { 
           test.closeSlider();
        }
     });
    

    【讨论】:

    • 但这需要我绑定,每次我创建一个新的,我想自动创建它,并自动找出哪个模态是要关闭的列表的顶部。跨度>
    • 见这个例子。它仅删除前期模式:jsfiddle.net/7PH9g/2
    • 我已将它添加到 generateSliders 方法的底部,它确实有效,但您介意向我解释一下它是如何知道顶级面板的吗?
    • 我已将if ($(self.vars.currentSlider).hasClass("infront")) { 添加到您的closeSlider 函数中
    • 但是即使滑块不再存在,这个事件也会触发,我只想知道如何将它绑定到实例,当我从 dom 中删除它时,事件被销毁它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-03
    • 2021-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-26
    相关资源
    最近更新 更多