2016-04-01 18 views
0

Img klasöründeki .jpgs değerini kaydettiğim ve albümüLength altındaki sayıyı kaydettiğim bir site yapıyorum, daha sonra bunları sitede görüntülemek için bir döngü kullanın ve bunların her biri Bir id = "içerik" + i, yani içerik1, içerik2, vb. İçeriğin üzerine geldiğimde1 kimliğiyle = plus_label1 öğesinin gizli kalmasını ve görünür olmasını ve nesneyi yeniden görünmez hale getirmesini sağladım. Sorun şu ki, mevcut kodum çalışmıyor, hata yok, sadece görünmüyor. Herhangi bir fikir neden?JQuery .hover() issue

for(i=1;i<=albumLength;i++){ 
$("#content"+i).hover(
    function() { 
    $("#plus_label"+i).css('visibility','visible'); 
    }, 
    function() { 
$("#plus_label"+i).css('visibility','hidden'); 
    } 
); 
} 
+0

içerik için tutarlı sınıf adını ekleyebilir veya buna erişiminiz yok: Ancak #plus_label Yapabileceğiniz #content aynı numara ile biter göz önüne alındığında? – Adjit

+1

Eğer biraz html gönderebilirseniz, daha iyi çalışabilirseniz bile, fiddle –

+2

üzerinde çalışma örneği var "Döngüdeki async işlevinde var kapsamı" görünümü – phenxd

cevap

1

sorun size hover yaparken, i artık tanımlanmış olmasıdır.

for(i=1;i<=albumLength;i++){ 
$("#content"+i).hover(
    function() { 
    var i = parseInt($(this).attr('id')); 
    $("#plus_label"+i).css('visibility','visible'); 
    }, 
    function() { 
    var i = parseInt($(this).attr('id')); 
    $("#plus_label"+i).css('visibility','hidden'); 
    } 
); 
} 
+0

Teknik olarak' 'var. Sadece onların işlevlerinde aynı "i" değerini referans aldıklarıdır. Anlamı, hepsi '' 'albumLength + 1 'olarak okuyacaktır. –