明天在看一段代码的时候发现了一个event.target,那么什么是event.target呢
target属性可返回触发事件的指标节点,简略来说,他会返回鼠标所点击的间接触发事件的节点。 从这点来说,与this是非常相像的,那么两者有什么区别呢

<body>    <ul>        <li>我是第1个元素</li>        <li>我是第2个元素</li>        <li>我是第3个元素</li>        <li>我是第4个元素</li>        <li>我是第5个元素</li>    </ul></body><script>    $("li").click(function (event) {        console.log(this)        console.log(event.target);    })</script>

当咱们点击第一个li标签时,两者输入的后果是一样的

当给父元素ul标签增加同名函数(触发事件冒泡)

<script>    $("ul").click(function (event) {        console.log(this)        console.log(event.target);    })</script>

此时点击第一个li标签的时候,this输入了ul标签,而event.target输入了li标签

由此能够看出,在没有事件冒泡的时候,this与event.target返回值是雷同的,都为触发事件的指标节点,而当触发事件冒泡后,this变为ul标签,而event.target依然为li标签

总结:this与event.target的区别为this可变,当含有事件冒泡时,this始终指向该函数的调用者,而event.target则不会变,始终指向触发该事件的指标节点