Hallo,

Ik wil dit vertalen in javascript, maar krijg het niet voor elkaar de if/else statement te integreren.

Dit is de bedoeling:


IF
$( "ul:nth-of-type(4n+1)" ) 
.addClass( "links" ); 


ELSE IF
$( "ul:nth-of-type(4n+4)" )   
.addClass( "rechts" ); 


ELSE
.addClass( "overig" ); 


Guido

if($( "ul:nth-of-type(4n+1)"))
{
   .addClass( "links" );
} else if($( "ul:nth-of-type(4n+4)"))
{  
   .addClass( "rechts" );
} else {
   .addClass( "overig" );
}


Zo? Of bedoel je dit niet?
Klopt idd, dat is de bedoeling... maar het werkt niet merk ik.

Guido
Tuurlijk werkt het zo niet, want er is geen id/class opgegeven voor addClass en misschien wel meer, maar ik heb geen idee wat je wilt doen en of hoe je code er allemaal uitziet.

Bij addClass moet je dus een id/class opgeven, bijvoorbeeld:
$('#id of .class').addClass('MijnClass');
Ik heb een overzichtspagina waar een heleboel UL's op staan (in 4 kolommen).

Het gaat om dit:
ul:nth-of-type


Hiermee selecteer ik iedere zoveelste UL en die UL wil ik dus een bepaalde class meegeven. Zie hier.


Het onderstaande werkt wel maar is dus niet voldoende:

$( "ul:nth-of-type(4n+1)" ) 
.addClass( "links" ); 


Guido
Ik ben niet zo bekend met nth-of-type, ahoewel ik wel veel bezig ben met jquery, maar volgens mij kun je het ook net zo goed in css doen, misschien dat dit je een beetje op weg helpt:


	<style>
	.test:nth-of-type(1) {
		background-color: red;
	}
	.test:nth-of-type(2) {
		background-color: white;
	}
	.test:nth-of-type(3) {
		background-color: blue;
	}
	.test:nth-of-type(4) {
		background-color: orange;
	}
	</style>
	<ul class="test">
	<li>UL 1</li>
	</ul>
	<ul class="test">
	<li>UL 2</li>
	</ul>
	<ul class="test">
	<li>UL 3</li>
	</ul>
	<ul class="test">
	<li>UL 4</li>
	</ul>


Resultaat:


Klopt, dat had ik al maar door het middels js te doen zou het ook ondersteund worden in oude versies van IE... (IE 8 en ouder).

Guido

Reageren