MediaWiki:Common.js: Unterschied zwischen den Versionen
KKeine Bearbeitungszusammenfassung Markierung: Zurückgesetzt |
KKeine Bearbeitungszusammenfassung Markierung: Zurückgesetzt |
||
Zeile 1: | Zeile 1: | ||
/** | /** Skript für [[Vorlage:Galerie]] */ | ||
$( function() { | |||
if (document.URL.match(/printable/g)) return; | |||
function toggleImageFunction(group, remindex, shwindex) { | |||
return function() { | |||
document.getElementById("ImageGroupsGr" + group + "Im" + remindex).style["display"] = "none"; | |||
document.getElementById("ImageGroupsGr" + group + "Im" + shwindex).style["display"] = "block"; | |||
return false; | |||
}; | |||
} | |||
var divs = document.getElementsByTagName("div"); | |||
var i = 0, j = 0; | |||
var units, search; | |||
var currentimage; | |||
var UnitNode; | |||
for (i = 0; i < divs.length; i++) { | |||
if (divs[i].className !== "ImageGroup") { continue; } | |||
UnitNode = undefined; | |||
search = divs[i].getElementsByTagName("div"); | |||
for (j = 0; j < search.length; j++) { | |||
if (search[j].className !== "ImageGroupUnits") { continue; } | |||
UnitNode=search[j]; | |||
break; | |||
} | |||
if (UnitNode === undefined) { continue; } | |||
units = []; | |||
for (j = 0 ; j < UnitNode.childNodes.length ; j++ ) { | |||
var temp = UnitNode.childNodes[j]; | |||
if (temp.className === "center") { units.push(temp); } | |||
} | |||
var rightlink = undefined; | |||
var commentText = undefined; | |||
for (j = 0; j < units.length; j++) { | |||
currentimage = units[j]; | |||
currentimage.id = "ImageGroupsGr" + i + "Im" + j; | |||
var leftlink = document.createElement("a"); | |||
if (commentText !== undefined) { | |||
leftlink.setAttribute("title", commentText); | |||
} | |||
var comment; | |||
if (typeof(currentimage.getAttribute("title")) !== "string") { | |||
commentText = (j+1) + "/" + units.length; | |||
comment = document.createElement("tt").appendChild(document.createTextNode("("+ commentText + ")")); | |||
} else { | |||
commentText = currentimage.getAttribute("title"); | |||
comment = document.createElement("span").appendChild(document.createTextNode(commentText)); | |||
currentimage.removeAttribute("title"); | |||
} | |||
if(rightlink !== undefined) { | |||
rightlink.setAttribute("title", commentText); | |||
} | |||
var imghead = document.createElement("div"); | |||
rightlink = document.createElement("a"); | |||
if (j !== 0) { | |||
leftlink.href = "#"; | |||
leftlink.onclick = toggleImageFunction(i, j, j-1); | |||
leftlink.appendChild(document.createTextNode("◀")); | |||
} | |||
if (j !== units.length - 1) { | |||
rightlink.href = "#"; | |||
rightlink.onclick = toggleImageFunction(i, j, j+1); | |||
rightlink.appendChild(document.createTextNode("▶")); | |||
} | |||
imghead.style["fontSize"] = "110%"; | |||
imghead.style["fontweight"] = "bold"; | |||
imghead.appendChild(leftlink); | |||
imghead.appendChild(document.createTextNode("\xA0")); | |||
imghead.appendChild(comment); | |||
imghead.appendChild(document.createTextNode("\xA0")); | |||
imghead.appendChild(rightlink); | |||
if (units.length > 1) { | |||
currentimage.insertBefore(imghead,currentimage.childNodes[0]); | |||
} | |||
if (j !== 0) { | |||
currentimage.style["display"] = "none"; | |||
} | |||
} | |||
} | |||
}); | |||
} ); | |||
Version vom 17. Januar 2023, 17:30 Uhr
/** Skript für [[Vorlage:Galerie]] */
$( function() {
if (document.URL.match(/printable/g)) return;
function toggleImageFunction(group, remindex, shwindex) {
return function() {
document.getElementById("ImageGroupsGr" + group + "Im" + remindex).style["display"] = "none";
document.getElementById("ImageGroupsGr" + group + "Im" + shwindex).style["display"] = "block";
return false;
};
}
var divs = document.getElementsByTagName("div");
var i = 0, j = 0;
var units, search;
var currentimage;
var UnitNode;
for (i = 0; i < divs.length; i++) {
if (divs[i].className !== "ImageGroup") { continue; }
UnitNode = undefined;
search = divs[i].getElementsByTagName("div");
for (j = 0; j < search.length; j++) {
if (search[j].className !== "ImageGroupUnits") { continue; }
UnitNode=search[j];
break;
}
if (UnitNode === undefined) { continue; }
units = [];
for (j = 0 ; j < UnitNode.childNodes.length ; j++ ) {
var temp = UnitNode.childNodes[j];
if (temp.className === "center") { units.push(temp); }
}
var rightlink = undefined;
var commentText = undefined;
for (j = 0; j < units.length; j++) {
currentimage = units[j];
currentimage.id = "ImageGroupsGr" + i + "Im" + j;
var leftlink = document.createElement("a");
if (commentText !== undefined) {
leftlink.setAttribute("title", commentText);
}
var comment;
if (typeof(currentimage.getAttribute("title")) !== "string") {
commentText = (j+1) + "/" + units.length;
comment = document.createElement("tt").appendChild(document.createTextNode("("+ commentText + ")"));
} else {
commentText = currentimage.getAttribute("title");
comment = document.createElement("span").appendChild(document.createTextNode(commentText));
currentimage.removeAttribute("title");
}
if(rightlink !== undefined) {
rightlink.setAttribute("title", commentText);
}
var imghead = document.createElement("div");
rightlink = document.createElement("a");
if (j !== 0) {
leftlink.href = "#";
leftlink.onclick = toggleImageFunction(i, j, j-1);
leftlink.appendChild(document.createTextNode("◀"));
}
if (j !== units.length - 1) {
rightlink.href = "#";
rightlink.onclick = toggleImageFunction(i, j, j+1);
rightlink.appendChild(document.createTextNode("▶"));
}
imghead.style["fontSize"] = "110%";
imghead.style["fontweight"] = "bold";
imghead.appendChild(leftlink);
imghead.appendChild(document.createTextNode("\xA0"));
imghead.appendChild(comment);
imghead.appendChild(document.createTextNode("\xA0"));
imghead.appendChild(rightlink);
if (units.length > 1) {
currentimage.insertBefore(imghead,currentimage.childNodes[0]);
}
if (j !== 0) {
currentimage.style["display"] = "none";
}
}
}
});