请教一个问题

prolovec 2011-04-17
Ext.Cartoon = {
			 elsNum : [],
		elsAdv : [],
	banner : function() {

		var sum = 0;
		var cur = 0;
		var width=800;
		var isRunning=true;
		// 计时器
		var tr = new Ext.util.TaskRunner();
		// 任务
		var task = {
			run : function() {
								if(cur!=sum&&isRunning){
									isRunning=false;
									auto(cur);
									cur++;
									isRunning=true;
								}else{
										cur=0;
									}

				
			},
			interval : 2000
		};
		tr.start(task);
		// 将广告对象存入数组
		Ext.fly('advert').select('li').each(function(el, this_, index_i) {
			//强制不要共享了,构造一个自己的ext 对象  
				var ob = Ext.get(el.dom)
				Ext.Cartoon.elsAdv.push(ob);
			});
		//将编号对象存入数组
		Ext.fly('number').select('li').each(function(el, index, allEl) {
			var ob = Ext.get(el.dom);
			Ext.Cartoon.elsNum.push(ob);
		});
		sum =Ext.Cartoon. elsAdv.length;
		// 为编号添加click事件
		Ext.each(Ext.Cartoon.elsNum, function(el, index, allEl) {
			el.on('click', function() {
				cur = index;
				auto(cur);
		
			});
		});
		// 为广告对象添加hover事件
		Ext.each(Ext.Cartoon.elsAdv,function(el,index,allEl){
		el.hover(function(e,t){tr.stop(task);}, function(e,t){tr.start(task)});
		});
		function auto(cur) {

		isRunning = false;
			Ext.each(Ext.Cartoon.elsNum, function(el, index, allEl){
				el.removeClass('on');

			});
	

							Ext.each(Ext.Cartoon.elsAdv, function(el, index, allEl){
								
									Ext.Cartoon.elsAdv[index].pause(1).animate({'left':{to:(index-cur)*800,unit:'px'}},2.0);
								
								
				//el.setLeft((index-cur)*800);
							

			});
	

			Ext.Cartoon.elsNum[cur].addClass('on');		
			isRunning=true;
		}

	}

}

上面是我用ext core实现的一个幻灯片效果的代码,现在的问题就是如果我不停地将鼠标移入或移出这个区域都会触发hover事件,请问有没有什么办法解决
Global site tag (gtag.js) - Google Analytics