2011-03-05 14 views
7

Üzerine geldiğinizde otomatik olarak dönmeyi durduran bir içerik kaydırıcım var.Mootools Mouseenter'ın gizli çocuk öğelerini tetiklemesini önleme

$$('.holder').addEvents({ 
    mouseover: function(){ 
     clearInterval(rollingon); 
    }, 
    mouseout: begin 
}); 

HTML:

<div id="fliptable"> 
    <div class="holder"> 
    <ul class="headliner" style="left: 0;"> 
     <li class="headitem"> 
      <div class="squared" style="opacity: 1;"> 
          *content* 
      </div> 
     </li> 
    </ul> 
    </div> 
</div> 

Fliptable tarayıcısı tam genişliği genişletir Benim sorunum burada bu kod parçasıdır. Böylece farklı liste öğeleri opaklıklarını gittikçe değiştirir. Şimdi benim sorunum, gizli liste öğelerinin üzerine geldiğimde mouseover'ın ateşleneceği. Neyse, çocuklara ateş açamıyorum mu? Eğer gereken bu

window.onmouseover=function(e){ 
if(e.target.className!="hiddenelements"){ 
what you want 
} 

gibi bir şey bile tepki ve yapılacak istemiyorum http://jsfiddle.net/AjWuL/

+2

cevabınız başlıktadır. 'mouseenter' + 'mouseleave'' mouseover' değil 'mouseout' - bu, eğer olay bir etkinlik sahibinin çocuğuysa, hataya neden olan mouseout'u engelleyen ayarlanmış olaylardır. Daha önce bunu denediyseniz, bir örnek oluşturmak ve istediğiniz davranışı açıklamak için www.jsfiddle.net adresini kullanın ve yardım alacaksınız :) –

+0

Oh whoops kodunu geri almayı unuttum. Mouseover'ı deniyordum, ama ilk başta mouseenter kullanıyordum. İşte jsfiddle http://jsfiddle.net/AjWuL/ –

+0

Bu gece biraz sarhoş olabilir ama bu amaçlandığı gibi çalışıyor. Mouseenter üzerinde sürgülü durur ve fare sahibinin herhangi bir çocuğunun içinde fareyi hareket ettirirken yanlışlıkla devam etmez. Burada, çeşitli gelişmelere ve döngü duraklamalarına dayanan eklenen Etkinlikler ile sınıfınızın geliştirilmiş bir sürümü. http://jsfiddle.net/dimitar/AjWuL/2/ - prolly en iyi kodum değil ama bir gelişme. olayları parent eline this.parent olarak ve kayan düğümlere (singular vs nnn events) eklediğime dikkat edin –

cevap

1

evet, sadece liste öğelerine başka bir sınıf ekleyebilirsiniz: Burada

JS keman olduğunu Bunu kodunuza uyarlayın, bunu jsfiddle üzerinde sınıfınıza nasıl koyacağınızı bilmiyorum.