问答详情
源自:2-2 jQuery鼠标事件之mousedown与mouseup事件

mouseup与mousedown

<script type="text/javascript">

    $('p').mouseup(function(){

        $('p').html("1234")

    })

    $('p').mousedown(function(e) {

        alert(e.target.textContent)

        })

    

        //this指向button元素

    $("button:eq(1)").mousedown(function() {

        $('p').mouseup() //指定触发绑定的事件

    })

    

    </script>

为什么触发了mousedown事件之后不再触发mouseup

提问者:Mycat_ 2016-08-14 22:09

个回答

  • 月白流苏丶谨色安年
    2016-08-14 22:58:48
    已采纳

    你把alert去掉,或者换成console.log(e.target.textContent)之后,mousedown事件之后就能触发mouseup了

  • 88556
    2016-08-14 23:01:05

    弹窗出来后,程序不会继续向下执行,当你去点弹窗时,鼠标已经离开p标签,自然不会触发事件,就相当于你在p标签上按住,然后在其他地方松开的效果一样,也不会触发事件

  • 火光余见3658736
    2016-08-14 22:50:59

    我测试了一下 把mousedown整个函数去掉后 能够正常触发mouseup 加入后就不行。然后我又将mousedown里面的alert改成了$('p').html('12') 整个函数能够正常触发down 与 up  

    所以我怀疑可能是alert 这个命令对后面产生了冲突 具体原因还是没有查到 希望你搞清楚了能告诉我  同小白一枚