« MediaWiki:Common.js » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
Ligne 1 : | Ligne 1 : | ||
/////////////////////////////////////////////////////// | /////////////////////////////////////////////////////// | ||
// Codesnippet to make your sidebaritems expandable // | // Codesnippet to make your sidebaritems expandable // |
Version du 18 avril 2012 à 12:13
///////////////////////////////////////////////////////
// Codesnippet to make your sidebaritems expandable //
// Use this code ONLY for monobook-Style. //
///////////////////////////////////////////////////////
$(document).ready(function(){
//set the default expanded Items by their headline
var defaultExpandItems= ['Navigation', 'Orga'];
//set the basic-name for the cookies, which save the current state of expanding
var expandCookieName = "disdance_project_wiki_nav_expanded_";
var maxHeights=[]
var expandeds=[];
var labels=[];
initNav();
}
function initNav(){
$('#p-logo').css({'position':'relative', 'display':'block'});;
$('.generated-sidebar h5,#p-tb h5 ').each(function(i){
var id = $(this).parent().attr('id');
maxHeights[id]=$(this).next('div').height();
var str = $(this).html();
labels[id]=str;
if ($.cookie(expandCookieName+id)=='false'){
expandeds[id]=false;
minimize( $(this));
} else if ($.cookie(expandCookieName+id)=='true' ){
expandeds[id]=true;
maximize( $(this));
} else if (defaultExpandItems.indexOf(str)==-1){
expandeds[id]=false;
minimize( $(this));
} else {
expandeds[id]=true;
maximize( $(this));
}
$(this).css({'cursor':'pointer'});
$(this).click(toggleNav);
});
}
function minimize(target){
var id=$(target).parent().attr('id');
//You can change the expires-parameter to save the Cookie longer/shorter than 7 days like in this Code
$.cookie(expandCookieName+id,'false', { expires: 7});
var str = labels[id]+" ►";
$(target).next('div').animate({'height':'0px'});
$(target).html(str);
}
function maximize(target){
var id=$(target).parent().attr('id');
//You can change the expires-parameter to save the Cookie longer/shorter than 7 days like in this Code
$.cookie(expandCookieName+id,'true', { expires: 7});
var str = labels[id]+" ▼";
var newHeight = maxHeights[id];
$(target).next('div').animate({'height':newHeight+'px'});
$(target).html(str);
}
function toggleNav(e){
var id=$(e.target).parent().attr('id');
expandeds[id]=!expandeds[id];
if(expandeds[id]==true){
maximize(e.target);
}
else{
minimize(e.target);
}
}
///////////////////////////////////////////////////////
///////////////////////////////////////////////////////