"Claudi Meneghin" <clamengh(a)yahoo.fr> escribió en el
mensaje news:20060519154657.23832.qmail@web26602.mail.ukl.yahoo.com...
Hello,
I would like to add a hide/show button to this template at Lombard
Wikipedia:
http://lmo.wikipedia.org/wiki/Template:Directori_comprimit2
It has been copied and pasted from
http://ca.wikipedia.org/wiki/Template:Directori_comprimit2.
Here 'mostra'='show' and 'amaga'='hide'.
I have tried by copying 'monobook.js' from
ca.wikipedia.org and even from
en.wikipedia.org, but seemingly it doesn't work. Do you have any suggestion
please?
Many thanks.
Sincerely yours,
Claudi
You can see the code on
http://ca.wikipedia.org/w/index.php?title=-&action=raw&gen=js
The code you want is: // 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);
}
}
}
if (window.addEventListener)
window.addEventListener("load",createNavigationBarToggleButton,false);
else if (window.attachEvent)
window.attachEvent("onload",createNavigationBarToggleButton);
var NavigationBarHide = 'Amaga';
var NavigationBarShow = 'Mostra';
var NavigationBarShowDefault = 1;
function toggleNavigationBar(indexNavigationBar)
{
var NavToggle = document.getElementById("NavToggle" +
indexNavigationBar);
var NavFrame = document.getElementById("NavFrame" + indexNavigationBar);
if (!NavFrame || !NavToggle) {
return false;
}
// 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 = NavigationBarShow;
}
}
// if hidden now
} else if (NavToggle.firstChild.data == NavigationBarShow) {
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;
}
}
}
}