为什么onkeyup事件在ul上绑定无效

来源:5-1 编程挑战

慕粉wz

2016-09-06 16:54

我查了百度,ul和li,a这些标签都支持onkeyup事件,但是我测试是发现ul上绑定没有反应,只有在外层的document或是div上才能触发,哪位大神来解惑一下。

menu.onkeyup=function(e){

     //这里为啥执行不了
     //代码
    }

写回答 关注

2回答

  • 小谢星
    2017-03-13 14:51:44

    ul是支持onkeyup的,你可以单独找一个ul测试一下

    onkeyup事件必须执行的前提是 对象必须拿到焦点,就是你当前必须选中这个对象的情况下,才有可能触发onkeyup。

    你上面的例子选是能选中,但是选中的是ul下面的li,而且一旦选择直接执行li的onclick事件了,执行完之后焦点应该又交给了document对象,所以这种情况下ul的onkeyup事件没机会执行。

    你可以把li的onclick注释掉,然后试一试你的代码

  • 慕粉3620994
    2016-09-06 17:49:21

    支持鼠标事件的 JavaScript 对象是:

    document, image, link, textarea

    慕粉wz

    onkeyup是键盘事件,我的意思是ul上为啥没有执行这个事件

    2016-09-13 09:36:25

    共 1 条回复 >

DOM事件探秘

DOM事件?本课程会通过实例来给小伙伴们讲解如何使用这些事件

99544 学习 · 1197 问题

查看课程

相似问题