2010-11-18 18 views
0

Kodumu tekrar tekrar kontrol ediyorum ve çalıştığım başka bir web sitesinde benzer bir şey kullanıyorum. http://bit.ly/34XhDbHover Intent çalışmıyor

//add hover intent to dropdown 
jQuery(document).ready(function(){ 
var config = { 
sensitivity: 3, // number = sensitivity threshold (must be 1 or higher) 
interval: 100, // number = milliseconds for onMouseOver polling interval 
over: doOpen, // function = onMouseOver callback (REQUIRED) 
timeout: 1200, // number = milliseconds delay before onMouseOut 
out: doClose // function = onMouseOut callback (REQUIRED) 
}; 

function doOpen() { 
    jQuery(this).addClass("hover"); 
    jQuery('ul:first',this).fadeIn(); 
} 
function doClose() { 
    jQuery(this).removeClass("hover"); 
    jQuery('ul:first',this).fadeOut(); 
} 
jQuery("ul#main_catnav li").hoverIntent(config); 

}); 

Ben hata ayıklama ile kontrol ama bir çatışma olması görünmüyor, ayrıca vurgulu sınıfı uygulandığı: İşte sitesine bağlantıdır.

Teşekkür ederiz!

cevap

1

sorun CSS var, eklenti değil, buna sahip:

ul#main_catnav ul { /*...other styles... */ display: none; } 
ul#main_catnav li:hover ul { display: block} 

fare :hover artık uygulanmıyor ve CSS, JavaScript tarafından anında gizli olduğunu bırakır Yani

. Çalıştırmak için böyle yanı li.hover eklemek gerekir:

eleman hesapları
ul#main_catnav ul { /*...other styles... */ display: none; } 
ul#main_catnav li:hover ul, ul#main_catnav li.hover ul { display: block} 

ya fare tarafından süpürdü veya hoverIntent eklenti ile veriyorsunuz gibi sınıf .hover sahip olmak.

+0

Çok teşekkür ederim! Biraz ince ayar yapmam gerekecek ama sonunda işe yarıyor. – Lucian