Archief - JS/CSS: Stylesheet will niet switchen.

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Anoniem22

Legacy Member
Weet er iemand wat ik hier fout doe?

PHP:
Dit staat in de <head> boven de JavaScripts:

<link rel="stylesheet" type="text/css" href="../style.css" title="skin1">
  <link rel="alternate stylesheet" type="text/css" href="../styleGroen.css" title="skin2">
  <link rel="alternate stylesheet" type="text/css" href="../stylePaars.css" title="skin3">
  <link rel="alternate stylesheet" type="text/css" href="../styleOranje.css" title="skin4">
Dan het JavaScriptje:

function switchStyleSheetGecko(toNum) {

	var linkTag, linkTitle = "skin" + toNum;
	var linksArray = document.getElementsByTagName("link");

	for(var linkNum=0; linkNum<linksArray.length; linkNum++) {
		linkTag = linksArray[linkNum];
		if(linkTag.getAttribute("rel").match(/^sty|^alt/i)) {

			if (linkTag.getAttribute("title") == linkTitle) {
				linkTag.disabled = false;
			} else if (linkTag.getAttribute("title")) {
				linkTag.disabled = true;
			}

		}
	}
}

En in de <body> staan dan mijn knoppen om de stylesheets te wijzigen:

<!-- #BeginLibraryItem "/Library/bgcolorbuttons.lbi" -->
<div id="bgColorBtn" align="left"><a href="javascript:setActiveStyleSheet('skin1');" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image1','','../images/gif/buttons/icon-blauwdown2.gif',1)">
<img src="../images/gif/buttons/icon-blauwup2.gif" alt="Blauw" name="Image1" width="20" height="20" border="0"></a>
<a href="javascript:setActiveStyleSheet('skin2');" 
onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image2','','../images/gif/buttons/icon-groendown2.gif',1)">
<img src="../images/gif/buttons/icon-groenup2.gif" alt="Groen" name="Image2" width="20" height="20" border="0"></a>
<a href="javascript:setActiveStyleSheet('skin3');" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image3','','../images/gif/buttons/icon-paarsdown2.gif',1)">
<img src="../images/gif/buttons/icon-paarsup2.gif" name="Image3" width="20" height="20" border="0"></a>
<a href="javascript:setActiveStyleSheet('skin4');" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image4','','../images/gif/buttons/icon-oranjedown2.gif',1)">
<img src="../images/gif/buttons/icon-oranjeup2.gif" name="Image4" width="20" height="20" border="0"></a>
</div>
<!-- #EndLibraryItem -->

Site staat op http://users.telenet.be/hos/test/Hossoft2/

Rvl

Legacy Member
is het niet redelijk onlogisch om eerst u files in te laden en dan pas een javascript te runnen om te zeggen welk hij moet selecteren. Javascript is hier dus nutteloos aangezien alle stylesheets toch al zijn ingeladen voor hij aan het js script komt

Skratz

Legacy Member
uw function heet switchStyleSheetGecko(toNum)
en uw link is setActiveStyleSheet('skin1')

ik ken niet veel van javascript, maar hier klopt iets niet.

Anoniem22

Legacy Member
kweet het als er iemand is die het weet mag hij het altijd zeggen, ben verder gegaan aan de rest van de site want hier kreeg ik echt horens van.

Obliv`

Legacy Member
sqoizo zei:
kweet het als er iemand is die het weet mag hij het altijd zeggen, ben verder gegaan aan de rest van de site want hier kreeg ik echt horens van.

euhm, ik ken ook nie veel van javascript. Maar hernoem uw functie is naar 'setActiveStyleSheet' ;), zoals skratz al zei...

Rvl

Legacy Member
omdat we soms te lui zijn om iets op te zoeken en dan maar een thread starten zodat anderen het voor u opzoeken.
http://www.alistapart.com/stories/alternate/

btw: voor je een script download, probeer het dan eerst te verstaan voor het te copy/paste. Soms toch handig om te weten :unsure: of is het begrijpen van scripts tegenwoordig al overkill
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan