Op mijn site gebruik ik een while om teksten uit een database op te halen en die in een div weer te geven. Ik krijg dus een aantal keer onderstaand blok op mijn pagina:
De tekst in de div is vaak vrij lang, en vandaar de toggle-link die er bij een klik voor moet zorgen dat de div inklapt tot een hoogte van 150px. Zo is er dus wel nog wat van de content te lezen, maar niet alles.
Dit kan met jquery door .toggleClass("maxheight") toe te voegen, waarbij maxheight in mijn css als class gespecificeerd staat met height : 150px;
Tot zover werkt het, het probleem start echter ook nu;
Wanneer ik op de link klik, klappen alle div's met de class admin-item in/uit.
Normaal zou ik hiervoor $(this) gebruiken om de toggle aan toe te voegen, maar dat gaat dan alleen om t geklikte item, en dat is de link in dit geval. En hier zou de div die erop volgt moeten staan.
Probleem 2 is dat wanneer er op de link geklikt wordt de div in 1 keer verspringt van originele grootte naar 150px, terwijl we van jQuery zo'n mooie slides gewend zijn. Ook deze krijg ik er niet in, want wanneer je met dingen als .slideUp/Down en .toggle gaat werken, verdwijnt de hele div, en dus ook die 150px die ik wil laten staan.
Zo ziet ie er dus nu uit, en ik wil hem alleen de eerste div met class admin-item na die "a" laten toggle-en, en dit met een mooie slide doen. Heeft iemand een idee voor me? Want met de jQuery documentation kom ik hierin ook niet echt verder.
code:
1
2
3
4
| <a href="#" class="toggle">In/uitklappen</a> <div class="admin-item"> <p>Met hier de tekst uit de database</p> </div> |
De tekst in de div is vaak vrij lang, en vandaar de toggle-link die er bij een klik voor moet zorgen dat de div inklapt tot een hoogte van 150px. Zo is er dus wel nog wat van de content te lezen, maar niet alles.
Dit kan met jquery door .toggleClass("maxheight") toe te voegen, waarbij maxheight in mijn css als class gespecificeerd staat met height : 150px;
Tot zover werkt het, het probleem start echter ook nu;
Wanneer ik op de link klik, klappen alle div's met de class admin-item in/uit.
Normaal zou ik hiervoor $(this) gebruiken om de toggle aan toe te voegen, maar dat gaat dan alleen om t geklikte item, en dat is de link in dit geval. En hier zou de div die erop volgt moeten staan.
Probleem 2 is dat wanneer er op de link geklikt wordt de div in 1 keer verspringt van originele grootte naar 150px, terwijl we van jQuery zo'n mooie slides gewend zijn. Ook deze krijg ik er niet in, want wanneer je met dingen als .slideUp/Down en .toggle gaat werken, verdwijnt de hele div, en dus ook die 150px die ik wil laten staan.
code:
1
2
3
4
5
| $(function() { $('a.toggle').click(function() { $(".admin-item").toggleClass("maxheight") }); }); |
Zo ziet ie er dus nu uit, en ik wil hem alleen de eerste div met class admin-item na die "a" laten toggle-en, en dit met een mooie slide doen. Heeft iemand een idee voor me? Want met de jQuery documentation kom ik hierin ook niet echt verder.