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

$('#div1').mousedown(function () {this})中的this指向哪里?

代码如下 希望实现在div1里边点下并移动鼠标显示鼠标坐标,鼠标抬起便停止,下面代码能正常运行,但是我试着把$('#div1').mousedown(function () {})中的$('#div1')换成this以后却没法运行了,请问mousedown里边回执函数function里边的this指向哪里的

$('#div1').mousedown(function () {
   $('#div1').mousemove(function (i) {
       $('#p1').text("鼠标的坐标为:"+i.pageX+"," +
           i.pageY)
   })
})
$('#div1').mouseup(function () {
   $('#div1').off('mousemove')
})

提问者:qq_叔山无趾_0 2017-03-15 10:27

个回答

  • 夜莺z
    2017-04-02 22:40:16

    $('#div1').mousedown(function () {
       $(this).mousemove(function (i) {
           $('#p1').text("鼠标的坐标为:"+i.pageX+"," +
               i.pageY)
       })
    })
    $('#div1').mouseup(function () {
       $('#div1').off('mousemove')
    })

    这样改是可以的,你不是写成 this.mousemove(function (i) 这样的了吧

  • qq_SalmaBennani_0
    2017-03-15 15:16:20

    div