Ik heb een klein 'scriptje' in mijn website geïntegreerd met jQuery dat op basis van het pad (de naam van de HTML-pagina) het uitklapmenu links openhoudt. Dat werkt perfect voor twee pagina's (jQuery OR):
Zodra ik probeer om daar een derde pagina aan toe te voegen werkt dit echter niet meer. document.ready herhaal ik hieronder niet want daar is niks aan gewijzigd (moet ik volgens mij ook niks aan wijzigen?).
Ik dacht eerst dat er iets mis was met de syntax maar die ziet er OK uit. Het lijkt er evenwel op dat de OR operator van jQuery met maximaal twee elementen overweg kan, waardoor dit (logischerwijs) niet werkt. Iemand een idee hoe ik dit op een andere manier met jQuery oplos?
Edit: ik heb onderstaande geprobeerd maar dat lijkt niet te werken (menu klapt dicht bij de drie pagina's). Ik weet ook niet of de laatste () in het script nodig is, het lijkt voor de code hieronder in ieder geval geen verschil te maken.
Bedankt!
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| <script> $(document).ready(function(){ $("#toggle").click(function(){ $("div").toggleClass("hidden unhidden"); }); }); </script> <script> (function() { if (window.location.href.indexOf('nieuwbouwprojecten.html') != -1 || window.location.href.indexOf('verbouwingen.html') != -1) { $("div").toggleClass("hidden unhidden"); } })(); </script> |
Zodra ik probeer om daar een derde pagina aan toe te voegen werkt dit echter niet meer. document.ready herhaal ik hieronder niet want daar is niks aan gewijzigd (moet ik volgens mij ook niks aan wijzigen?).
code:
1
2
3
4
5
6
7
| <script> (function() { if (window.location.href.indexOf('nieuwbouwprojecten.html') != -1 || window.location.href.indexOf('verbouwingen.html') != -1 || window.location.href.indexOf('appartementen.html') != -1) { $("div").toggleClass("hidden unhidden"); } })(); </script> |
Ik dacht eerst dat er iets mis was met de syntax maar die ziet er OK uit. Het lijkt er evenwel op dat de OR operator van jQuery met maximaal twee elementen overweg kan, waardoor dit (logischerwijs) niet werkt. Iemand een idee hoe ik dit op een andere manier met jQuery oplos?
Edit: ik heb onderstaande geprobeerd maar dat lijkt niet te werken (menu klapt dicht bij de drie pagina's). Ik weet ook niet of de laatste () in het script nodig is, het lijkt voor de code hieronder in ieder geval geen verschil te maken.
code:
1
2
3
4
5
6
7
8
9
10
| <script> (function() { if (window.location.href.indexOf('nieuwbouwprojecten.html') != -1) { $("div").toggleClass("hidden unhidden"); } else if (window.location.href.indexOf('verbouwingen.html') != -1) { $("div").toggleClass("hidden unhidden"); } else if (window.location.href.indexOf('appartementen.html') != -1) { $("div").toggleClass("hidden unhidden"); }); </script> |
Bedankt!
[ Voor 29% gewijzigd door Borromini op 10-11-2019 10:20 ]
Got Leenucks? | Debian Bookworm x86_64 / ARM | OpenWrt: Empower your router | Blogje