我不明白爲什麼這種情況正在發生的兩種不同的方式看到預期的結果...JavaScript對象,使用電話功能
我需要得到它在鼠標按下設置的對象startPoint
和當前e.pageY
從mousemove做一些計算。
var adjustHeight = {
change: function(e) {
console.log(this.startPoint)
console.log(e.pageY);
},
};
$('#dragger').mousedown(function(e) {
e.preventDefault();
adjustHeight.startPoint = e.pageY;
$(window).on('mousemove', adjustHeight.change());
$(window).on('mouseup', function() {
$(window).off('mousemove', adjustHeight.change())
});
})
但是控制檯打印出的對象startPoint
這是我所期望的,但e.pageY
未定義
但是當我使用這條線,而不是
...
$(window).on('mousemove', adjustHeight.change);
$(window).on('mouseup', function() {
$(window).off('mousemove', adjustHeight.change)
});
...
我得到的e.pageY
如預期,但現在startPoint
未定義。當我檢查什麼this
指向它是DOMWindow ....
我的問題是爲什麼會發生這種情況,我將如何去同時獲取兩個對象屬性和功能e
?