Différences entre versions de « MediaWiki:Common.js »
De Wiki Dofus
Aller à la navigationAller à la recherchem |
m |
||
| Ligne 125 : | Ligne 125 : | ||
scriptElem.setAttribute( 'type' , 'text/javascript' ); | scriptElem.setAttribute( 'type' , 'text/javascript' ); | ||
document.getElementsByTagName( 'head' )[0].appendChild( scriptElem ); | document.getElementsByTagName( 'head' )[0].appendChild( scriptElem ); | ||
| + | |||
| + | /* | ||
| + | author: Rob Eberhardt | ||
| + | desc: fix MinWidth for IE6 & IE7 | ||
| + | params: none | ||
| + | returns: nothing | ||
| + | notes: cannot yet fix childless elements like INPUT or SELECT | ||
| + | history: | ||
| + | 2006-11-20 revised for standards-mode compatibility | ||
| + | 2006-11-17 first version | ||
| + | */ | ||
| + | function fixMinWidthForIE(){ | ||
| + | try{ | ||
| + | if(!document.body.currentStyle){return} //IE only | ||
| + | }catch(e){return} | ||
| + | var elems=document.getElementsByTagName("*"); | ||
| + | for(e=0; e<elems.length; e++){ | ||
| + | var eCurStyle = elems[e].currentStyle; | ||
| + | var l_minWidth = (eCurStyle.minWidth) ? eCurStyle.minWidth : eCurStyle.getAttribute("min-width"); //IE7 : IE6 | ||
| + | if(l_minWidth && l_minWidth != 'auto'){ | ||
| + | var shim = document.createElement("DIV"); | ||
| + | shim.style.cssText = 'margin:0 !important; padding:0 !important; border:0 !important; line-height:0 !important; height:0 !important; BACKGROUND:RED;'; | ||
| + | shim.style.width = l_minWidth; | ||
| + | shim.appendChild(document.createElement(" ")); | ||
| + | if(elems[e].canHaveChildren){ | ||
| + | elems[e].appendChild(shim); | ||
| + | }else{ | ||
| + | //?? | ||
| + | } | ||
| + | } | ||
| + | } | ||
| + | } | ||
| + | |||
| + | /*</pre>*/ | ||
Version du 31 août 2009 à 10:03
/*<pre>*/
/* Any JavaScript here will be loaded for all users on every page load. */
//============================================================
//
// Boîtes déroulantes
//
//============================================================
// BEGIN Dynamic Navigation Bars (experimantal)
// set up the words in your language
var NavigationBarHide = '[ Enrouler ]';
var NavigationBarShow = '[ Dérouler ]';
var NavigationBarShowDefault = 0;
// shows and hides content and picture (if available) of navigation bars
// Parameters:
// indexNavigationBar: the index of navigation bar to be toggled
function toggleNavigationBar(indexNavigationBar)
{
var NavToggle = document.getElementById("NavToggle" + indexNavigationBar);
var NavFrame = document.getElementById("NavFrame" + indexNavigationBar);
if (!NavFrame || !NavToggle) {
return false;
}
// ajout par Dake - permet de créer un titre en lieu et place du "Dérouler" grâce
// à l'attribut "title" du tag.
var ShowText;
if (NavFrame.title == undefined || NavFrame.title.length == 0 ) {
ShowText = NavigationBarShow;
} else {
ShowText = NavFrame.title;
}
// if shown now
if (NavToggle.firstChild.data == NavigationBarHide) {
for (
var NavChild = NavFrame.firstChild;
NavChild != null;
NavChild = NavChild.nextSibling
) {
if (NavChild.className == 'NavPic') {
NavChild.style.display = 'none';
}
if (NavChild.className == 'NavContent') {
NavChild.style.display = 'none';
}
if (NavChild.className == 'NavToggle') {
NavChild.firstChild.data = ShowText;
}
}
// if hidden now
} else if (NavToggle.firstChild.data == ShowText) {
for (
var NavChild = NavFrame.firstChild;
NavChild != null;
NavChild = NavChild.nextSibling
) {
if (NavChild.className == 'NavPic') {
NavChild.style.display = 'block';
}
if (NavChild.className == 'NavContent') {
NavChild.style.display = 'block';
}
if (NavChild.className == 'NavToggle') {
NavChild.firstChild.data = NavigationBarHide;
}
}
}
}
// adds show/hide-button to navigation bars
function createNavigationBarToggleButton()
{
var indexNavigationBar = 0;
// iterate over all < div >-elements
for(
var i=0;
NavFrame = document.getElementsByTagName("div")[i];
i++
) {
// if found a navigation bar
if (NavFrame.className == "NavFrame") {
indexNavigationBar++;
var NavToggle = document.createElement("a");
NavToggle.className = 'NavToggle';
NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');');
var NavToggleText = document.createTextNode(NavigationBarHide);
NavToggle.appendChild(NavToggleText);
// add NavToggle-Button as first div-element
// in < div class="NavFrame" >
NavFrame.insertBefore(
NavToggle,
NavFrame.firstChild
);
NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
}
}
// if more Navigation Bars found than Default: hide all
if (NavigationBarShowDefault < indexNavigationBar) {
for(
var i=1;
i<=indexNavigationBar;
i++
) {
toggleNavigationBar(i);
}
}
}
addOnloadHook(createNavigationBarToggleButton);
// END Dynamic Navigation Bar
var scriptElem = document.createElement( 'script' );
scriptElem.setAttribute( 'src' , 'http://www.wiki-dofus.eu/w?title=MediaWiki:Sortables.js&action=raw&ctype=text/javascript&dontcountme=s' );
scriptElem.setAttribute( 'type' , 'text/javascript' );
document.getElementsByTagName( 'head' )[0].appendChild( scriptElem );
/*
author: Rob Eberhardt
desc: fix MinWidth for IE6 & IE7
params: none
returns: nothing
notes: cannot yet fix childless elements like INPUT or SELECT
history:
2006-11-20 revised for standards-mode compatibility
2006-11-17 first version
*/
function fixMinWidthForIE(){
try{
if(!document.body.currentStyle){return} //IE only
}catch(e){return}
var elems=document.getElementsByTagName("*");
for(e=0; e<elems.length; e++){
var eCurStyle = elems[e].currentStyle;
var l_minWidth = (eCurStyle.minWidth) ? eCurStyle.minWidth : eCurStyle.getAttribute("min-width"); //IE7 : IE6
if(l_minWidth && l_minWidth != 'auto'){
var shim = document.createElement("DIV");
shim.style.cssText = 'margin:0 !important; padding:0 !important; border:0 !important; line-height:0 !important; height:0 !important; BACKGROUND:RED;';
shim.style.width = l_minWidth;
shim.appendChild(document.createElement(" "));
if(elems[e].canHaveChildren){
elems[e].appendChild(shim);
}else{
//??
}
}
}
}
/*</pre>*/