2009-09-04 76 views
0

我正在使用高度修改版本的jqueryFileTree插件,它能夠添加新的文件和文件夾。當實時創建新文件時,我必須再次將樹綁定到單擊事件,以便所有新文件和文件夾都能按預期工作。取消綁定與jQuery失敗的點擊事件

只是重新綁定文件樹造成了一些文件夾的功能問題。對於每個新文件,filetree都會運行綁定,這意味着當您添加一個文件然後單擊一個目錄關閉它時,它會打開並關閉,因爲該函數運行了兩次。

我最近對問題進行了本地化,並試圖在重新綁定之前解除所有與文件樹連接的事件。但是,問題仍然存在。爲什麼會這樣呢?語法錯誤?

$('UL.jqueryFileTree').unbind(); 
bindTree('UL.jqueryFileTree'); 

乾杯!

克里斯

+0

試一下,看看是否$(「UL.jqueryFileTree」)返回正確的對象/ s的 – 2009-09-04 07:50:34

+0

你能告訴我們什麼樣的問題,它給你。謝謝。 – Tarik 2009-09-04 07:55:08

回答

1

啊哈!

我應該更好地完成我的研究。它可以正常工作後,而不是寫作:

$('UL.jqueryFileTree').find('LI A').unbind(); 
bindTree('UL.jqueryFileTree'); 
+0

聽到這是很好的工作。 – Tarik 2009-09-04 08:03:14

0

但是,如果拆散導致一個問題,你可以使用RemoveAttr()從元素刪除事件。因爲jQuery中的unbind事件有一個錯誤。

0

也看jQuerys現場活動。 Perhaphs你不需要重新綁定。可能會更好地工作。

$('#divId a').live('click', function(e){ 
    //do something to all matched and future elements 
});