2013-10-19 17 views
0

我很感謝jQuery的幫助。 在這裏,一切都運行得很好: jsfiddle- this works fine正確遍歷同一塊中的元素

但在這裏,以相同的頁面,他們發生衝突(它們相互干擾的兩個相同的HTML代碼,當您單擊第二塊的「秀」,它影響1號地塊): jsfiddle - the problem

有沒有辦法來改變JS(正確使用.closest(),.找到(),其他穿越技術),這樣我可以有很多的頁面相同的那些塊需要和所有獨立工作? (沒有發明新的ID和乘以JS代碼)。

我可以很容易地通過<li>'s,但它可能與DIVs?

編輯: (我沒有任何東西的聲譽,因此,使用編輯:。 非常感謝您的幫助和額外刷上的ID 一切完美

所有最好)

回答

3

您有id複製(將它們轉換爲類名.funFactAnswer),並且您的選擇器是通用的,使其對目標更加具體。

$(document).ready(function() { 
     $(".showfunFactAnswer").click(function() { 
     var $this = $(this); 
     $this.closest('.funFactWrap').find('.funFactAnswer').slideDown() 
     $this.next().removeClass("hide"); 
    }); 
    $(".hideButtonAnswer").click(function() { 
     $(this).addClass("hide").closest('.funFactWrap').find('.funFactAnswer').slideUp() 
    }); 

}); 

Fiddle

隨着重複的ID,ID選擇將選擇僅使用相同ID的元素的第一個實例。