我已經安裝並嘗試自定義Jquery文件樹,以便在點擊文件夾名稱時,文件夾名稱和路徑返回到調用函數。目前它只展開和摺疊文件夾,並在點擊文件時返回文件名。Jquery文件樹 - 如何返回文件夾名稱文件夾點擊
所以我需要返回文件夾,並且無法看到觸發的位置。
我正在使用php連接器。 下面的鏈接是我下載的示例代碼: http://abeautifulsite.net/blog/2008/03/jquery-file-tree/
感謝, 埃德
我已經安裝並嘗試自定義Jquery文件樹,以便在點擊文件夾名稱時,文件夾名稱和路徑返回到調用函數。目前它只展開和摺疊文件夾,並在點擊文件時返回文件名。Jquery文件樹 - 如何返回文件夾名稱文件夾點擊
所以我需要返回文件夾,並且無法看到觸發的位置。
我正在使用php連接器。 下面的鏈接是我下載的示例代碼: http://abeautifulsite.net/blog/2008/03/jquery-file-tree/
感謝, 埃德
不知道,如果有一個「API」的方式來做到這一點。但是,如果你看一下源代碼(行64-81)
if($(this).parent().hasClass('directory')) {
if($(this).parent().hasClass('collapsed')) {
// Expand
if(!o.multiFolder) {
$(this).parent().parent().find('UL').slideUp({ duration: o.collapseSpeed, easing: o.collapseEasing });
$(this).parent().parent().find('LI.directory').removeClass('expanded').addClass('collapsed');
}
$(this).parent().find('UL').remove(); // cleanup
showTree($(this).parent(), escape($(this).attr('rel').match(/.*\//)));
$(this).parent().removeClass('collapsed').addClass('expanded');
} else {
// Collapse
$(this).parent().find('UL').slideUp({ duration: o.collapseSpeed, easing: o.collapseEasing });
$(this).parent().removeClass('expanded').addClass('collapsed');
}
} else {
h($(this).attr('rel'));
}
看起來你可以調用hasClass('directory')
如果子句中的另一個功能,它會工作。
所以,你可以:
更改行36是
fileTree: function(o, h, dire) {
65至66加
dire($(this).attr('rel'));
如果你想有更多的控制/靈活/信息,你可以做dire($(this));
,它會發送jQuery對象而不僅僅是rel
屬性。
例子:
$(document).ready(function() {
$('#container_id').fileTree({ root: '/some/folder/' }, function(file) {
// do something when a file is clicked
}, function(dir){
// do something when a dir is clicked
});
});
我沒有測試它,你可能需要改變一些事情左右。
它運作得很好,我只是改變了最後一個函數爲「可怕的」,就像是它65行和66
... function(dire){
// do something when a dir is clicked
}
之間的代碼添加你的連接器腳本和當前的jQuery,我會告訴你需要什麼。 – 2010-10-22 21:29:44