2013-04-20 80 views
0

我剛剛開始使用Jquery,我很喜歡它,但是我遇到了一個問題,我無法包住頭。點擊鏈接後jquery動畫無法正常工作

我已經實現了一個我購買的插件,它創建了一個拇指網格,然後您可以過濾屬性。 (槽李類)

此外,我寫了一段代碼,展開點擊div。這兩個工作完美,直到菜單使用(按屬性過濾)我明白這可能聽起來有點模糊,直到你看到它,所以這裏的鏈接: http://media-surfer.nl/test

如果你需要粘貼在這裏的所有代碼,我會做所以,但由於這是相當多的我想最好保持概述並訪問鏈接。

我真的爲了我的生活無法弄清楚這一點,所以任何幫助,非常感謝! 由於一噸提前:)

這裏是我寫的代碼:

<!-- collapse expand jquery --> 
<script type="text/javascript"> 

    $(document).ready(function(){ 

     $(".inhoud").hide(); 
     $(".show_hide").show(); 

     $('.show_hide').click(function(event) { 

      $(".inhoud").parent().animate({ 
       width: '160' 
      }, 500, function() { 
      // Animation complete. 
      }); 

     var $inhoud = $(this).next(".inhoud"); 

     if($inhoud.hasClass("active")) 
     { 
      $(this).parent().animate({ 
       width: '160' 
       }, 500, function() { 
       // Animation complete. 
      }); 
      $inhoud.removeClass("active"); 
     } else { 
      $(this).parent().animate({ 
       width: '769' 
       }, 500, function() { 
       // Animation complete. 
      }); 
      $inhoud.addClass("active"); 
     } 

    }); 

}); 

</script> 
<!-- collapse expand jquery --> 
+0

後的HTML標記還... – 2013-04-20 09:44:54

回答

1

的sooo ..你發現你的頁面上的錯誤嗎? :D

我想我已經使用了這個相同的排序插件一次,它正在做的是創建一個新的元素集合(匹配排序標準),然後動畫。我的猜想是這是它打破點擊功能的確切原因,因爲在文檔準備好後,您將它綁定到現有元素,並通過對插件進行排序生成沒有綁定到它們的點擊事件的新元素。嘗試通過更換該行使用.on()

$('.show_hide').click(function(event) { 

$(document).on('click','.show_hide', function(event) { 
+0

由於一噸!真的我有庫存:) 這是有道理的,它創造新的元素,但爲什麼不附加的類(這是點擊觸發器)呢? – 2013-04-20 11:02:19

+0

因爲在準備文檔時使用$('。show_hide')。click',文檔會加載事件並將其綁定到當前擁有該類的所有元素。它結束了。 :)如果創建了新元素,他們將不會擁有點擊偵聽器(即使它們與類匹配)。另一方面,當您將偵聽器綁定到文檔本身時,它始終可以工作,因爲文檔始終存在。 – Kaloyan 2013-04-20 11:06:33

+0

感謝您解釋:)我很開心! – 2013-04-20 11:27:18