点击测试二的P元素内容弹出与点击测试三P元素不弹出

来源:2-2 jQuery鼠标事件之mousedown与mouseup事件

T松子

2018-09-06 17:40

测试二中,点击P元素可以弹出P元素中的内容“$('button:first').mousedown(function(e) {alert(this)})”这个可以理解:因为下面有绑定P元素的mousedown事件。那为什么点击测试三的P元素就不可以弹出信息”$('.right').mousedown(1111, set)“,之前不是已经绑定过P元素了吗?

写回答 关注

1回答

  • 水秋玄
    2018-09-07 16:23:07
    已采纳

    因为绑定P元素的事件是在第一个P元素之后,按顺序执行,它找不到后面的P,所以执行这段点击事件只会找到前面的那个P,不会找到后面的P。

    想要后面的P元素也绑定点击事件就必须把绑定事件的代码放到最后面(就可以绑定所有的P元素),或者变着这样:

    $(function(){
        $('p').mousedown(function(e) {
            alert(e.target.textContent);
        });
    });

    文档加载完后再执行代码,就可以都绑定了。

    T松子

    明白了,谢谢

    2018-09-08 09:11:52

    共 1 条回复 >

jQuery基础(三)—事件篇

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

89997 学习 · 625 问题

查看课程

相似问题