【问题标题】:Will this click the link when the keys are pressed?按下键时会单击链接吗?
【发布时间】:2015-10-16 11:07:03
【问题描述】:

好的,所以我需要创建代码以确保在按下某些键时触发事件,就像单击按钮一样。当他们按下键盘键时,通过该按钮点击链接。

el.on('keypress', function(event){
    $('li').find('li.next');
        if (keycode == 39) {
            $('.next').click();
        }

});
el.on('keypress', function(event){
   $('li').find('li.prev');
        if (keycode == 37){
            $('.prev').click();

    }
});

【问题讨论】:

  • 如果你想触发点击使用 $('.next').trigger('click');
  • 这条线的意义何在:$('li').find('li.prev'); 它似乎没有做任何事情。另外你为什么不试试看它是否有效?
  • 什么是el?对应的html在哪里?你在说什么链接.. <li> 不是链接。请显示所有相关的 html 结构。使用find() 看起来很可疑。
  • 基本上,我想在用户按下左右箭头键时触发模态中的下一个和上一个按钮,
  • @charlietfl var el = this.element;

标签: javascript jquery


【解决方案1】:

您可能想查看用于绑定键事件的 Hotkeys 库

https://github.com/tzuryby/jquery.hotkeys

【讨论】:

    【解决方案2】:

    JS

    el.on('keyup', function (event) {
    var $paginationList = el.find('ul.pagination');
    const LeftKeyCode = 37;
    const RightKeyCode = 39;
    var keyCode = event.keyCode || event.which;
    if (keyCode == LeftKeyCode){
        $paginationList.find('li.prev').find('a').click();
    }
    if (keyCode == RightKeyCode){
        $paginationList.find('li.next').find('a').click();
    }
    

    HTML

    <li class="prev">
               <a href="<?= $pageUrl ?>" class="widget-modal-drilldown"> Previous</a>
            </li>
    <li class="next">
                <a href="<?= $pageUrl ?>" class="widget-modal-drilldown">Next</a>
            </li>
    

    【讨论】:

      猜你喜欢
      • 2010-12-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-09
      • 2023-03-06
      相关资源
      最近更新 更多