我有一個關於jQuery庫中鼠標事件的問題。 我有一個簡單的JavaScript函數如下:jQuery和MouseEvents
$(function() {
var xpos;
var ypos;
$("#pic1").mousedown(function() {
$("#pic1").mousemove(function(e) {
xpos = e.pageX;
ypos = e.pageY;
$("#pic1").css({'left': xpos, 'top': ypos});
});
});
});
但它使您可以點擊圖像並將其周圍跟隨鼠標。我試圖通過使用mouseup函數使其停止,但它似乎不能打破「repaint」方法,它會更新css座標。
HTML:
<img id="pic1" src="img/test.jpg" alt="">
CSS:
#pic1 {
position: absolute;
}
會不會有做到這一點更簡單的方法?
在另一個事件處理程序中添加一個事件處理程序,就像你在做的那樣,幾乎不是一個好主意。每次發生「mousedown」事件時,您都會添加另一個「mousemove」處理程序。 – Pointy
@Point我同意,儘管在這種情況下,他所做的可能是有效的......只要他在'mouseup'處理程序中刪除'mousemove'處理程序即可。 –
是的,當你按下鼠標時,計劃是讓它跟隨,當你放開時釋放。 – Andreas