鼠标停止移动事件

<script src="jquery.js"></script>
<script>
(function($){
	$.fn.moveStopEvent = function(callback){
		return this.each(function() {
			var x = 0,
				y = 0,
				x1 = 0,
				y1 = 0,
				isRun = false,
				si,
				self = this;

			var sif = function(){
				si = setInterval(function(){
									if(x == x1 && y ==y1){
										clearInterval(si);
										isRun = false;
										callback && callback.call(self);
									}
									x = x1;
									y = y1;
								}, 500);
			}

			$(this).mousemove(function(e){
				x1 = e.pageX;
				y1 = e.pageY;
				!isRun && sif(), isRun = true;
			}).mouseout(function(){
				clearInterval(si);
				isRun = false;
			});
	});
	}
})(jQuery);

$(function(){
	$("#div1,#div2").moveStopEvent(function(){
			alert($(this).attr("id"));
		}
	);
});
</script>
<div id="div1" style="width:200px;height:100px;background-color:#ccc;">div1</div>
<br/>
<div id="div2" style="width:200px;height:100px;background-color:#ccc;">div2</div>

  

posted @ 2013-12-21 15:23  weharvest  阅读(1463)  评论(0编辑  收藏  举报