1
我做了一個指令,裏面我試圖聽$ document.mousemove事件以重新定位一個div - 爲了製作一個數字滑塊(即在1-100之間的幻燈片數字)的目的。Angular Mousemove事件
<div ng-mousedown="handleDown($event)"></div>
以上mousedown事件由以下功能解僱和處理:
$scope.handleDown = function(event) {
console.log("MOUSE DOWN");
event.preventDefault();
startX = event.pageX - x;
startY = event.pageY - y;
$document.on('mousemove', mousemove);
$document.on('mouseup', mouseup);
};
鼠標鬆開功能不工作並導致控制檯日誌,但是鼠標移動完全不火:
function mousemove(event) {
console.log("MOUSE MOVE");
}
function mouseup() {
console.log("MOUSE UP");
$document.unbind('mousemove', mousemove);
$document.unbind('mouseup', mouseup);
}
如果是相關的,我的指令:
.directive('fmSlider', function($document) {
return {
restrict: 'E',
scope: {
fmMin: '=',
fmMax: '=',
fmDefault: '='
},
templateUrl: 'path-to-template/slider.html'
};
});
我不明白爲什麼mouseup可以工作,但mousemove不會。謝謝您的幫助。
嘗試使用'而不是document.onmousemove',對我的作品 – Mosho
有別的事情上,你所提供的代碼之外。這裏是一個小提琴,顯示你的代碼工作正常。 mousemove事件正在發射。如果這沒有幫助,請在小提琴中複製您的問題或分享一些代碼 http://jsfiddle.net/G9jGa/17/ –