jquery ile küçük bir kaydırıcı eklentisi oluşturun. farenin sol veya sağ kontrol divunun üzerindeyken görüntüler% 5 oranında soldan veya sağdan kayıyordu. Tıklatıldığında görüntü,% 100jQuery tetikleme durumunu başlatmadan önce tetikleme durumunu kontrol edin
'a doğru kaymaktadır. Sorun, farenin soldaki sağdaki kontrol divanındaki tüm slayt sırasında fareyi hareket ettirirken farenin farenin sol divanın her zaman tetiklenip tetiklenmediğini kontrol etmesidir. olay tekrar. sonuç, soldan ve sağdan gelen resmin% 5 olduğunu gösteriyor.
Bu gibi fareyi kontrol etmenin bir yolu var mı?
if($(this).mouseover())
$(".right").trigger("mouseover");
bu
$(".right",this).bind({
mouseover:function(){
if(vars.current == $("img").length-1 || vars.running) return false;
$("img:eq("+(vars.current+1)+")").removeAttr("style").css({position:"absolute",left:"100%","z-index":vars.current+1}).show().animate({left:"95%"}, {queue: false})
},
mouseleave:function(){
if(vars.current == $("img").length-1 || vars.running) return false;
$("img:eq("+(vars.current+1)+")").animate({left:"100%"}, {queue: false , complete:function(){ $(this).hide() } });
},
click:function(){
if(vars.current == $("img").length-1 || vars.running) return false;
vars.running = true;
$("img:eq("+(vars.current+1)+")").animate({left:"0%"}, {queue: false, complete:function(){
$("img:eq("+vars.current+")").hide();
$(this).css({"z-index":0})
vars.current++;
vars.running = false;
if($(this).mouseover())
$(".right").trigger("mouseover");
} });
}
})
i diğer cevabını şekilde kullanabilirsiniz
... ama onun deletet gibi bir kontrolör div görünüm kod ....
mouseover:function(){
isOver = 'right';
if(vars.current == $("img").length-1 || vars.running) return false;
$("img:eq("+(vars.current+1)+")").removeAttr("style").css({position:"absolute",left:"100%","z-index":vars.current+1}).show().animate({left:"95%"}, {queue: false})
},
mouseleave:function(){
isOver = false
if(vars.current == $("img").length-1 || vars.running) return false;
$("img:eq("+(vars.current+1)+")").animate({left:"100%"}, {queue: false , complete:function(){ $(this).hide() } });
},
click:function(){
if(vars.current == $("img").length-1 || vars.running) return false;
vars.running = true;
$("img:eq("+(vars.current+1)+")").animate({left:"0%"}, {queue: false, complete:function(){
$("img:eq("+vars.current+")").hide();
$(this).css({"z-index":0})
vars.current++;
vars.running = false;
if(isOver)
$("."+isOver).trigger("mouseover");
} });
}
kullanarak var isOver sola veya sağa tetikleyebiliyordum
Gerçekten bu çözümün kısalık gibi içinde
Kullanım yerine
. Belki de bu nedenle farenin bir öğenin üzerinde olup olmadığını kontrol etmek için ek jQuery işlevi yoktur. Sözdizimi desteklenmeyen – KSev
bu yüzden bir çözüm olup olmadığından emin değilim. – lorddarq
Bu çözüm jQuery 1.9 ve higehr, cf @lorddarq – jones