(function($) {
$.fn.tree = function() {
return this.each(function(){
var $$ = $(this).addClass('tree');
// Applique la classe 'file' aux "li" qui n'ont pas d'enfants
$('li:not(:has(ul))', $$).addClass('file');
// Applique la classe 'folder' aux "li" qui ont des enfants
$('li:has(ul)', $$).addClass('folder');
// Masque tous les "ul" sous les dossiers
$('.folder ul', $$).hide();
// Affiche/masque le "ul" sous le folder lorsqu'il est cliqué
// et y ajoute/supprime la classe "open" puis stoppe la propagation
// pour que les dossiers supérieurs ne "recoivent pas" le clic
$('.folder', $$).click(function(e) {
$('ul:first', this).slideToggle();
$(this).toggleClass('open');
e.stopPropagation();
return false;
});
// Stoppe la propagation du clic sur les fichiers
// pour que les dossiers supérieurs ne "recoivent pas" le clic
// et se ferment
$('.file', $$).click(function(e) {
e.stopPropagation();
});
// Fonction comptant les enfants et affichant le compteur
function addCounters() {
// Supprime les anciens compteurs
$('.counter', $$).remove();
// Ajoute les nouveaux compteurs
$('.folder > a', $$).append(function() {
var parent = $(this).parent();
var count = $('.file', parent).size();
return ' ('+ count +') ';
});
}
addCounters();
});
};
})(jQuery);
(function($) {
$.fn.tree2 = function() {
return this.each(function(){
var $$ = $(this).addClass('tree2');
// Applique la classe 'file' aux "li" qui n'ont pas d'enfants
$('li:not(:has(ul))', $$).addClass('file');
// Applique la classe 'folder' aux "li" qui ont des enfants
$('li:has(ul)', $$).addClass('folder');
// Masque tous les "ul" sous les dossiers
$('.folder ul', $$).hide();
// Affiche/masque le "ul" sous le folder lorsqu'il est cliqué
// et y ajoute/supprime la classe "open" puis stoppe la propagation
// pour que les dossiers supérieurs ne "recoivent pas" le clic
$('.folder', $$).click(function(e) {
$('ul:first', this).slideToggle();
$(this).toggleClass('open');
e.stopPropagation();
return false;
});
// Stoppe la propagation du clic sur les fichiers
// pour que les dossiers supérieurs ne "recoivent pas" le clic
// et se ferment
$('.file', $$).click(function(e) {
e.stopPropagation();
});
// Fonction comptant les enfants et affichant le compteur
function addCounters() {
// Supprime les anciens compteurs
$('.counter', $$).remove();
// Ajoute les nouveaux compteurs
$('.folder > a', $$).append(function() {
var parent = $(this).parent();
var count = $('.file', parent).size();
return ' ('+ count +') ';
});
}
addCounters();
});
};
$.fn.tree3 = function() {
return this.each(function(){
var $$ = $(this).addClass('tree3');
// Applique la classe 'file' aux "li" qui n'ont pas d'enfants
$('li:not(:has(ul))', $$).addClass('file');
// Applique la classe 'folder' aux "li" qui ont des enfants
$('li:has(ul)', $$).addClass('folder');
// Masque tous les "ul" sous les dossiers
$('.folder ul', $$).hide();
// Affiche/masque le "ul" sous le folder lorsqu'il est cliqué
// et y ajoute/supprime la classe "open" puis stoppe la propagation
// pour que les dossiers supérieurs ne "recoivent pas" le clic
$('.folder', $$).click(function(e) {
$('ul:first', this).slideToggle();
$(this).toggleClass('open');
e.stopPropagation();
return false;
});
// Stoppe la propagation du clic sur les fichiers
// pour que les dossiers supérieurs ne "recoivent pas" le clic
// et se ferment
$('.file', $$).click(function(e) {
e.stopPropagation();
});
// Fonction comptant les enfants et affichant le compteur
function addCounters() {
// Supprime les anciens compteurs
$('.counter', $$).remove();
// Ajoute les nouveaux compteurs
$('.folder > a', $$).append(function() {
var parent = $(this).parent();
var count = $('.file', parent).size();
return ' ('+ count +') ';
});
}
addCounters();
});
};
$.fn.tree4 = function() {
return this.each(function(){
var $$ = $(this).addClass('tree4');
// Applique la classe 'file' aux "li" qui n'ont pas d'enfants
$('li:not(:has(ul))', $$).addClass('file');
// Applique la classe 'folder' aux "li" qui ont des enfants
$('li:has(ul)', $$).addClass('folder');
// Masque tous les "ul" sous les dossiers
$('.folder ul', $$).hide();
// Affiche/masque le "ul" sous le folder lorsqu'il est cliqué
// et y ajoute/supprime la classe "open" puis stoppe la propagation
// pour que les dossiers supérieurs ne "recoivent pas" le clic
$('.folder', $$).click(function(e) {
$('ul:first', this).slideToggle();
$(this).toggleClass('open');
e.stopPropagation();
return false;
});
// Stoppe la propagation du clic sur les fichiers
// pour que les dossiers supérieurs ne "recoivent pas" le clic
// et se ferment
$('.file', $$).click(function(e) {
e.stopPropagation();
});
// Fonction comptant les enfants et affichant le compteur
function addCounters() {
// Supprime les anciens compteurs
$('.counter', $$).remove();
// Ajoute les nouveaux compteurs
$('.folder > a', $$).append(function() {
var parent = $(this).parent();
var count = $('.file', parent).size();
return ' ('+ count +') ';
});
}
addCounters();
});
};
$.fn.tree5 = function() {
return this.each(function(){
var $$ = $(this).addClass('tree5');
// Applique la classe 'file' aux "li" qui n'ont pas d'enfants
$('li:not(:has(ul))', $$).addClass('file');
// Applique la classe 'folder' aux "li" qui ont des enfants
$('li:has(ul)', $$).addClass('folder');
// Masque tous les "ul" sous les dossiers
$('.folder ul', $$).hide();
// Affiche/masque le "ul" sous le folder lorsqu'il est cliqué
// et y ajoute/supprime la classe "open" puis stoppe la propagation
// pour que les dossiers supérieurs ne "recoivent pas" le clic
$('.folder', $$).click(function(e) {
$('ul:first', this).slideToggle();
$(this).toggleClass('open');
e.stopPropagation();
return false;
});
// Stoppe la propagation du clic sur les fichiers
// pour que les dossiers supérieurs ne "recoivent pas" le clic
// et se ferment
$('.file', $$).click(function(e) {
e.stopPropagation();
});
// Fonction comptant les enfants et affichant le compteur
function addCounters() {
// Supprime les anciens compteurs
$('.counter', $$).remove();
// Ajoute les nouveaux compteurs
$('.folder > a', $$).append(function() {
var parent = $(this).parent();
var count = $('.file', parent).size();
return ' ('+ count +') ';
});
}
addCounters();
});
};
$.fn.tree6 = function() {
return this.each(function(){
var $$ = $(this).addClass('tree6');
// Applique la classe 'file' aux "li" qui n'ont pas d'enfants
$('li:not(:has(ul))', $$).addClass('file');
// Applique la classe 'folder' aux "li" qui ont des enfants
$('li:has(ul)', $$).addClass('folder');
// Masque tous les "ul" sous les dossiers
$('.folder ul', $$).hide();
// Affiche/masque le "ul" sous le folder lorsqu'il est cliqué
// et y ajoute/supprime la classe "open" puis stoppe la propagation
// pour que les dossiers supérieurs ne "recoivent pas" le clic
$('.folder', $$).click(function(e) {
$('ul:first', this).slideToggle();
$(this).toggleClass('open');
e.stopPropagation();
return false;
});
// Stoppe la propagation du clic sur les fichiers
// pour que les dossiers supérieurs ne "recoivent pas" le clic
// et se ferment
$('.file', $$).click(function(e) {
e.stopPropagation();
});
// Fonction comptant les enfants et affichant le compteur
function addCounters() {
// Supprime les anciens compteurs
$('.counter', $$).remove();
// Ajoute les nouveaux compteurs
$('.folder > a', $$).append(function() {
var parent = $(this).parent();
var count = $('.file', parent).size();
return ' ('+ count +') ';
});
}
addCounters();
});
};
$.fn.tree7 = function() {
return this.each(function(){
var $$ = $(this).addClass('tree7');
// Applique la classe 'file' aux "li" qui n'ont pas d'enfants
$('li:not(:has(ul))', $$).addClass('file');
// Applique la classe 'folder' aux "li" qui ont des enfants
$('li:has(ul)', $$).addClass('folder');
// Masque tous les "ul" sous les dossiers
$('.folder ul', $$).hide();
// Affiche/masque le "ul" sous le folder lorsqu'il est cliqué
// et y ajoute/supprime la classe "open" puis stoppe la propagation
// pour que les dossiers supérieurs ne "recoivent pas" le clic
$('.folder', $$).click(function(e) {
$('ul:first', this).slideToggle();
$(this).toggleClass('open');
e.stopPropagation();
return false;
});
// Stoppe la propagation du clic sur les fichiers
// pour que les dossiers supérieurs ne "recoivent pas" le clic
// et se ferment
$('.file', $$).click(function(e) {
e.stopPropagation();
});
// Fonction comptant les enfants et affichant le compteur
function addCounters() {
// Supprime les anciens compteurs
$('.counter', $$).remove();
// Ajoute les nouveaux compteurs
$('.folder > a', $$).append(function() {
var parent = $(this).parent();
var count = $('.file', parent).size();
return ' ('+ count +') ';
});
}
addCounters();
});
};
$.fn.tree8 = function() {
return this.each(function(){
var $$ = $(this).addClass('tree8');
// Applique la classe 'file' aux "li" qui n'ont pas d'enfants
$('li:not(:has(ul))', $$).addClass('file');
// Applique la classe 'folder' aux "li" qui ont des enfants
$('li:has(ul)', $$).addClass('folder');
// Masque tous les "ul" sous les dossiers
$('.folder ul', $$).hide();
// Affiche/masque le "ul" sous le folder lorsqu'il est cliqué
// et y ajoute/supprime la classe "open" puis stoppe la propagation
// pour que les dossiers supérieurs ne "recoivent pas" le clic
$('.folder', $$).click(function(e) {
$('ul:first', this).slideToggle();
$(this).toggleClass('open');
e.stopPropagation();
return false;
});
// Stoppe la propagation du clic sur les fichiers
// pour que les dossiers supérieurs ne "recoivent pas" le clic
// et se ferment
$('.file', $$).click(function(e) {
e.stopPropagation();
});
// Fonction comptant les enfants et affichant le compteur
function addCounters() {
// Supprime les anciens compteurs
$('.counter', $$).remove();
// Ajoute les nouveaux compteurs
$('.folder > a', $$).append(function() {
var parent = $(this).parent();
var count = $('.file', parent).size();
return ' ('+ count +') ';
});
}
addCounters();
});
};
$.fn.tree9 = function() {
return this.each(function(){
var $$ = $(this).addClass('tree9');
// Applique la classe 'file' aux "li" qui n'ont pas d'enfants
$('li:not(:has(ul))', $$).addClass('file');
// Applique la classe 'folder' aux "li" qui ont des enfants
$('li:has(ul)', $$).addClass('folder');
// Masque tous les "ul" sous les dossiers
$('.folder ul', $$).hide();
// Affiche/masque le "ul" sous le folder lorsqu'il est cliqué
// et y ajoute/supprime la classe "open" puis stoppe la propagation
// pour que les dossiers supérieurs ne "recoivent pas" le clic
$('.folder', $$).click(function(e) {
$('ul:first', this).slideToggle();
$(this).toggleClass('open');
e.stopPropagation();
return false;
});
// Stoppe la propagation du clic sur les fichiers
// pour que les dossiers supérieurs ne "recoivent pas" le clic
// et se ferment
$('.file', $$).click(function(e) {
e.stopPropagation();
});
// Fonction comptant les enfants et affichant le compteur
function addCounters() {
// Supprime les anciens compteurs
$('.counter', $$).remove();
// Ajoute les nouveaux compteurs
$('.folder > a', $$).append(function() {
var parent = $(this).parent();
var count = $('.file', parent).size();
return ' ('+ count +') ';
});
}
addCounters();
});
};
$.fn.tree10 = function() {
return this.each(function(){
var $$ = $(this).addClass('tree10');
// Applique la classe 'file' aux "li" qui n'ont pas d'enfants
$('li:not(:has(ul))', $$).addClass('file');
// Applique la classe 'folder' aux "li" qui ont des enfants
$('li:has(ul)', $$).addClass('folder');
// Masque tous les "ul" sous les dossiers
$('.folder ul', $$).hide();
// Affiche/masque le "ul" sous le folder lorsqu'il est cliqué
// et y ajoute/supprime la classe "open" puis stoppe la propagation
// pour que les dossiers supérieurs ne "recoivent pas" le clic
$('.folder', $$).click(function(e) {
$('ul:first', this).slideToggle();
$(this).toggleClass('open');
e.stopPropagation();
return false;
});
// Stoppe la propagation du clic sur les fichiers
// pour que les dossiers supérieurs ne "recoivent pas" le clic
// et se ferment
$('.file', $$).click(function(e) {
e.stopPropagation();
});
// Fonction comptant les enfants et affichant le compteur
function addCounters() {
// Supprime les anciens compteurs
$('.counter', $$).remove();
// Ajoute les nouveaux compteurs
$('.folder > a', $$).append(function() {
var parent = $(this).parent();
var count = $('.file', parent).size();
return ' ('+ count +') ';
});
}
addCounters();
});
};
$.fn.tree11 = function() {
return this.each(function(){
var $$ = $(this).addClass('tree11');
// Applique la classe 'file' aux "li" qui n'ont pas d'enfants
$('li:not(:has(ul))', $$).addClass('file');
// Applique la classe 'folder' aux "li" qui ont des enfants
$('li:has(ul)', $$).addClass('folder');
// Masque tous les "ul" sous les dossiers
$('.folder ul', $$).hide();
// Affiche/masque le "ul" sous le folder lorsqu'il est cliqué
// et y ajoute/supprime la classe "open" puis stoppe la propagation
// pour que les dossiers supérieurs ne "recoivent pas" le clic
$('.folder', $$).click(function(e) {
$('ul:first', this).slideToggle();
$(this).toggleClass('open');
e.stopPropagation();
return false;
});
// Stoppe la propagation du clic sur les fichiers
// pour que les dossiers supérieurs ne "recoivent pas" le clic
// et se ferment
$('.file', $$).click(function(e) {
e.stopPropagation();
});
// Fonction comptant les enfants et affichant le compteur
function addCounters() {
// Supprime les anciens compteurs
$('.counter', $$).remove();
// Ajoute les nouveaux compteurs
$('.folder > a', $$).append(function() {
var parent = $(this).parent();
var count = $('.file', parent).size();
return ' ('+ count +') ';
});
}
addCounters();
});
};
$.fn.tree12 = function() {
return this.each(function(){
var $$ = $(this).addClass('tree12');
// Applique la classe 'file' aux "li" qui n'ont pas d'enfants
$('li:not(:has(ul))', $$).addClass('file');
// Applique la classe 'folder' aux "li" qui ont des enfants
$('li:has(ul)', $$).addClass('folder');
// Masque tous les "ul" sous les dossiers
$('.folder ul', $$).hide();
// Affiche/masque le "ul" sous le folder lorsqu'il est cliqué
// et y ajoute/supprime la classe "open" puis stoppe la propagation
// pour que les dossiers supérieurs ne "recoivent pas" le clic
$('.folder', $$).click(function(e) {
$('ul:first', this).slideToggle();
$(this).toggleClass('open');
e.stopPropagation();
return false;
});
// Stoppe la propagation du clic sur les fichiers
// pour que les dossiers supérieurs ne "recoivent pas" le clic
// et se ferment
$('.file', $$).click(function(e) {
e.stopPropagation();
});
// Fonction comptant les enfants et affichant le compteur
function addCounters() {
// Supprime les anciens compteurs
$('.counter', $$).remove();
// Ajoute les nouveaux compteurs
$('.folder > a', $$).append(function() {
var parent = $(this).parent();
var count = $('.file', parent).size();
return ' ('+ count +') ';
});
}
addCounters();
});
};
$.fn.tree13 = function() {
return this.each(function(){
var $$ = $(this).addClass('tree13');
// Applique la classe 'file' aux "li" qui n'ont pas d'enfants
$('li:not(:has(ul))', $$).addClass('file');
// Applique la classe 'folder' aux "li" qui ont des enfants
$('li:has(ul)', $$).addClass('folder');
// Masque tous les "ul" sous les dossiers
$('.folder ul', $$).hide();
// Affiche/masque le "ul" sous le folder lorsqu'il est cliqué
// et y ajoute/supprime la classe "open" puis stoppe la propagation
// pour que les dossiers supérieurs ne "recoivent pas" le clic
$('.folder', $$).click(function(e) {
$('ul:first', this).slideToggle();
$(this).toggleClass('open');
e.stopPropagation();
return false;
});
// Stoppe la propagation du clic sur les fichiers
// pour que les dossiers supérieurs ne "recoivent pas" le clic
// et se ferment
$('.file', $$).click(function(e) {
e.stopPropagation();
});
// Fonction comptant les enfants et affichant le compteur
function addCounters() {
// Supprime les anciens compteurs
$('.counter', $$).remove();
// Ajoute les nouveaux compteurs
$('.folder > a', $$).append(function() {
var parent = $(this).parent();
var count = $('.file', parent).size();
return ' ('+ count +') ';
});
}
addCounters();
});
};
})(jQuery);
$(function() {
$('#tree').tree();
$('#tree2').tree2();
$('#tree3').tree3();
$('#tree4').tree4();
$('#tree5').tree5();
$('#tree6').tree6();
$('#tree7').tree7();
$('#tree8').tree8();
$('#tree9').tree9();
$('#tree10').tree10();
$('#tree11').tree11();
$('#tree12').tree12();
$('#tree13').tree13();
});