javascript - 使用向上和向下箭头时停止光标移动

标签 javascript jquery

我有一个显示结果的实时搜索输入,并允许您在结果弹出时使用向上和向下箭头,但我想防止光标在使用向上和向下箭头时向左或向右移动。我想不通。我尝试了 e.preventDefault() 但没有成功。这是我尝试过的:

    if(e.which == 40){

        e.preventDefault();

        current = results.find('li.hover');
        current.removeClass();
        var next = current.next('li');

        if(next.length == 0){
            next = current.parent().parent().parent().next().find('li:first');

            /* Go back to the top */
            if(next.length == 0){
                next = results.find('li:first');
            }
        }

        next.addClass('hover');
        return false;
    }

谢谢!

最佳答案

你绑定(bind)的是 onkeyup 还是 keydown?如果您使用的是 keydown,则可以阻止它,如果您使用的是 keyup,则事件已经发生。否则 e.preventDefault() 应该可以正常工作。

关于javascript - 使用向上和向下箭头时停止光标移动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8108215/

相关文章:

javascript - 如何 XHR 远程服务器?

javascript - <label> 标签内的 <a> 标签不触发复选框

javascript - 正则表达式:必须存在的组,但事先未知它将在哪里

javascript - Angular : How do I Rxjs filter by property through an array of objects?

jquery - 悬停时使其他 div 变灰

javascript - Angular 逆 $watch

javascript - 未捕获的类型错误 : Cannot read property 'createElementNS' of undefined

javascript - 使用 jquery 遍历列表

javascript - 纳米滚动不工作

javascript - 在父级悬停时更改 img src