$(this).text('触发事件:' + e.type) 这个type是从哪冒出来的,为啥要加type.

来源:5-1 on()的多事件绑定

Kanen

2016-08-20 15:47

$(this).text('触发事件:' + e.type) 这个type是从哪冒出来的,为啥要加type.

写回答 关注

3回答

  • GavinZeng
    2016-10-24 11:25:26

    在我看来你首先没弄清楚 e是什么,其次才是 type是什么

    e是on()给函数返回的一个事件,可以理解为

    $("#test3").on({
            mousedown: function(e) {
                $(this).text('触发事件:' + e.type)
            },
            mouseup: function(e) {
                $(this).text('触发事件:' + e.type)
            }
        })

    on方法,给匿名函数添加了一个事件e,这个e就代表当前事件本身

    mousedown: function(e),这里的e就是mousedown事件

    mouseup: function(e),这里的e就是mouseup事件

    再来理解type:所有事件都有一个类型,事件的类型通过type来查询,e.type就是获取e事件的事件类型。

    在这里,#test3这个元素被添加了 mousedown事件和mouseup事件,

    $(this)指向了#test3这个元素,那么正对这个元素调用 e.type,就是获取在这个元素上的事件类型

    所以通俗的翻译,

    mousedown: function(e) {
        $(this).text('触发事件:' + e.type)
    }

    就是当在#test3上面鼠标按下时,输出 #test3上触发了哪个事件类型

    不恰当的解释就是,我打(mousedown)了你(#test3),然后问一个旁观者(function),我刚才对你做了什么事(e.type

    qq_善哉善...

    这个解释很完美

    2018-10-22 10:03:43

    共 2 条回复 >

  • 森威
    2016-09-02 15:02:06

    type意思是事件类型,$(this).text('触发事件:' + e.type) 就是要在text中显示当前触发的事件类型

  • yehoon
    2016-08-20 15:54:59

    时间回调函数里自带一个事件参数,在函数中可以调用这个参数的方法

    .type是事件对象本身的一个方法

jQuery基础(三)—事件篇

jQuery第三阶段开启事件修炼,掌握对页面进行交互的操作

89996 学习 · 625 问题

查看课程

相似问题