2012-11-21 12 views
6

Kazanmayı umduğum şey, deptmts dizisindeki bir öğenin üzerine geldiğimde, brnches dizisindeki karşılık gelen öğenin sonra soluklaşıp kaybolmasıdır. Olması gerektiğini düşündüğüm şeyi aşağıya ekledim ama yanlış gittiğimden emin değilim. Herhangi bir yardım çok takdir edilecektir.Vurgulu dizi öğesi başka bir dizide karşılık gelen öğeyi soldu [Kapatma sorunu]

var brnches = ["#branch01","#branch02","#branch03","#branch04"] 
var deptmts = ["#depart01","#depart02","#depart03","#depart04"] 

var brchhov = function() { 
    for(var i=0; i<deptmts.length; i++){ 
     $(deptmts[i]).hover(
      function(){$(brnches[i]).stop(true).fadeTo("fast", 1);}, 
      function(){$(brnches[i]).stop(true).fadeTo("slow", 0);} 
     ); 
    } 
}; 
+1

, neden kullanım brnches & yerine değişkenler olarak şube ve bölümlerin deptmts? İyi ve net değişken isimler, kodun açıklanmasında çok yol kat edebilir. –

+1

@MorganWilde: Üzgünüm evet haklısın, hepsini kopyaladıktan sonra bunları değiştirmeliydim. Sadece kendi kişisel tercihlerim için kısaldım, aynı uzunluktaki karakterleri korudum. Artı tarafta hala ne anlama geldiğini anladınız :) ... ama evet bu kötü bir uygulamadır. – dev

cevap

10

Klasik kapatma Sayı .. Sadece bir konu dışı not

var brchhov = function() { 
    for(var i=0; i<deptmts.length; i++){ 
     (function(num){ 
      $(deptmts[num]).hover(
       function(){$(brnches[num]).stop(true).fadeTo("fast", 1);}, 
       function(){$(brnches[num]).stop(true).fadeTo("slow", 0);} 
      ); 
     })(i); 
    } 
}; 

Check Fiddle

+0

+1, bu gereksinime cevap verdiğinden + ... deptmts dizisindeki bir elemanın üzerine geldiğimde, brnches dizisindeki karşılık gelen öğe daha sonra soluklaşır ve dışarıda kalır.' @vletech: Yan not olarak hovered departman ile soluk dallar arasındaki ilişkiyi, eşleşen/gerekli sırada bulunmalarına güvenmemenizden başka. Şubelerinizin her zaman bölümler ile aynı endeks/sırada bulunmadığını tespit ederseniz, bunları eleman indeksinden daha güvenilir bir şekilde eşleştirmeniz gerekecektir. – Nope

+0

@Sushanth: Mükemmel çalıştığınız için teşekkür ederim, hala öğreniyorum, hatırlayacağım biri budur. – dev

+0

@ FrançoisWahl: Haklısın, dizilerin her ikisi için de aynı sırada olmalarına güveniyordum, umarım bunu değiştirmek zorunda kalmayacağım. – dev

İlgili konular