Javascript

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 3 volgende »

Willem Jan Z

Willem Jan Z

09/12/2005 19:22:00
Quote Anchor link
Het beste mensen,

Ging voor het eerst een proberen te werken met een menu dat 'geselecteerd' is als de pagina is geopend.

Het enige idee dat in mijn hoofd opkwam was met JS:

<script language="javascript" type="text/css">

function ChangeMenu(menu)
{
document.getElementByClass('actief')this.class = '';
document.getElementById(menu)this.class = 'actief';
}

</script>

En dan het menu:

<a href="?id=home" class="actief" id="Home">Home</a><br \>
<a href="?id=bestuur" class="" id="Bestuur">Bestuur</a><br \>
enz..

Op elke pagina roep ik dan dmv een onLoad de functie aan met desbetreffende id...

Maar zo werkt het niet... Heb al verschillende varianten geprobeert voor de class aanroepen en veranderen, want denk dat daar het probleem ligt. Maar het wil niet echt lukken.
Snapt iemand waarom niet? Of is er een veel makkelijkere manier om een menu aan te passen... (de class hoeft alleen maar op 'actief' komen te staan)

Edit: Site
Edit2: Sorry voor de slechte titel
Edit3: Test dingetje verandert naar normaal
Gewijzigd op 09/12/2005 19:32:00 door Willem Jan Z
 
PHP hulp

PHP hulp

23/12/2024 09:54:14
 
Robert Deiman

Robert Deiman

09/12/2005 19:53:00
Quote Anchor link
Je roept changemenu niet aan vanuit je links.. Dus bijv bij de link:
onClick="ChangeMenu('Home')" voorde <a href met id Home.. etc

Overigens kan het met Javascript zijn dat je
= 'actief' en class = ''; moet veranderen. Ik heb zelf een invoerformulier gemaakt, met 3 tekstvelden waarin een standaardwaarde staat die wegmoet bij onfocus. Ik zal elke keer met het probleem met de quotes in de Javascript.. probeer na die = met dubbele quotes te werken als het zo niet werkt.
Gewijzigd op 09/12/2005 19:55:00 door Robert Deiman
 

09/12/2005 19:55:00
Quote Anchor link
@Willem-Jan:
Weet je wel zeker dat je dit zo wilt doen?
Kijk eens naar andere sites hoe hun het doen :)

Enne, sinds wanneer is javascript bij jou van het type text/css? ;)
Quote:
<script language="javascript" type="text/css">


Mooie design trouwens.
Gewijzigd op 09/12/2005 19:56:00 door
 
Willem Jan Z

Willem Jan Z

09/12/2005 19:56:00
Quote Anchor link
Dat moet toch niet uitmaken?
Ik roep hem aan als ik een pagina laad... De pagina's hebben ook nog subpagina's
En als ik dus via de adresbalk daar naartoe ga, moet hij ook die link actief maken, dus moet wel op de pagina gebeuren...
 
Willem Jan Z

Willem Jan Z

09/12/2005 19:58:00
Quote Anchor link
Sebastiaan:
Mooie design trouwens.


Tnx

Quote:
<script language="javascript" type="text/css">

Uhm... Sinds vandaag :D

Edit: Heb je een goed voorbeeld van een site dan? (Die bijvoorbeeld met tabbladen werkt ofzo...
Gewijzigd op 09/12/2005 19:59:00 door Willem Jan Z
 
Robert Deiman

Robert Deiman

09/12/2005 19:59:00
Quote Anchor link
Hoe maak je die (menu) waarde aan in je javascript? Je kan in een javascript geen PHP var gebruiken, tenzij je die echo't...
probeer eens zonder (menu) (dus () )achter de functienaam en dan:
var menu =
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $_GET['id'] ?>
in je javascript
 
Willem Jan Z

Willem Jan Z

09/12/2005 20:02:00
Quote Anchor link
Ik werk niet via de id...
Had ik eerst wel, maar vond ik te veel gedoe om later links te maken enzo...

Die var menu geef ik dus mee met het onLoad attribuut:
onLoad="ChangeMenu('Bestuur');'
Waar bestuur dus de naam van div 'Bestuur' is.
 
Robert Deiman

Robert Deiman

09/12/2005 20:04:00
Quote Anchor link
en met die quotes dan? ik heb daar ook een hele tijd mee zitten klooien :S
 
Willem Jan Z

Willem Jan Z

09/12/2005 20:09:00
Quote Anchor link
Hoe bedoel je?
Rond het Bestuur de quotes? Anders ziet hij het als var als ik ze er niet bij zet...

Edit:
@Sebastiaan: Nu ik type heb aangepast krijg ik wel foutmeldingen in de console... Maar wordt er niet wijzer van...
Missing ; before statement..
Gewijzigd op 09/12/2005 20:10:00 door Willem Jan Z
 
Robert Deiman

Robert Deiman

09/12/2005 20:14:00
Quote Anchor link
function ChangeMenu(menu)
{
document.getElementByClass('actief')this.class = "";
document.getElementById(menu)this.class = "actief";
}
ik bedoelde met de " in plaats van ' eromheen.. daar deed die bij mij nogal moeilijk over.. weet niet waarom, maar met de " werkte het wel :S

EDIT:
Overigens let er niet op dat die de laatste " waarschijnlijk ' weergeeft, maar zorg er wel voor dat je zeker bent dat daar wel een " is getypt!
Gewijzigd op 09/12/2005 20:15:00 door Robert Deiman
 
Willem Jan Z

Willem Jan Z

09/12/2005 20:15:00
Quote Anchor link
Nog steeds niks...
 
Robert Deiman

Robert Deiman

09/12/2005 20:17:00
Quote Anchor link
Doe eens een print van je menu var in de functie.. ff controle of die goed is meegegeven.. :)
 

09/12/2005 20:18:00
Quote Anchor link
Willem-Jan:
@Sebastiaan: Nu ik type heb aangepast krijg ik wel foutmeldingen in de console... Maar wordt er niet wijzer van...
Missing ; before statement..
Ik zie geen console fouten. FireFox 1.5 (Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8) Gecko/20051111 Firefox/1.5)
 
Willem Jan Z

Willem Jan Z

09/12/2005 20:22:00
Quote Anchor link
Ik test ook op mijn localhost, dus daar staat eerste versie nog op...

@Robert:
Krijg zelfs geen output geprint :S
document.write(menu);
en
document.write = menu;
geprobeert, beide werkte niet... (1 van beide sowieso niet... Maar ben niet zo JS expert :P)
Gewijzigd op 09/12/2005 20:23:00 door Willem Jan Z
 
Robert Deiman

Robert Deiman

09/12/2005 20:26:00
Quote Anchor link
Heb je hem IN de functie staan? zo ja, dan kan het nog zijn dat de functie niet goed wordt aangeroepen, zo nee:
de variabele menu wordt niet gevuld. Dit moet eerst worden opgelost, anders werkt het niet.

Je 1e document.write(menu); is de goede variant. Dus als die buiten je function staat en hij geeft niets weer is de var menu niet gevuld.
Kan je laten zien hoe die dat doet?
 

09/12/2005 20:28:00
Quote Anchor link
@Willen-Jan: Missschien even kijken naar de tabblad effecten van ModWiki.net
Bij Discussion en Article
 
Willem Jan Z

Willem Jan Z

09/12/2005 20:30:00
Quote Anchor link
<h1 onLoad="ChangeMenu('Bestuur');">Bestuur</h1>

Zo roep ik hem aan...
Of kan onLoad niet op alle attributen worden toegepast?
Want als ik gewone tekst wil afdrukken, kan dat ook niet binnen de functie...
 

09/12/2005 20:31:00
Quote Anchor link
Kan je die onLoad niet in de body tag zetten?
 
Robert Deiman

Robert Deiman

09/12/2005 20:33:00
Quote Anchor link
Dat zal de fout zijn Willem-Jan. onLoad kan inderdaad niet bij de h1. Ik zou hem inderdaad in de body zetten, zoals sebastiaan al aangaf. Voor de body is het WEL een geschikte functie..
 
Willem Jan Z

Willem Jan Z

09/12/2005 20:35:00
Quote Anchor link
Ik heb het nu als apart stukje script staan:
http://www.littledesign.nl/index.php?id=bestuur

Dit omdat de waarde in de functie per pagina anders moet zijn, en meerdere body's lijkt me niet echt netjes... (Is dat wel valid dan?)
Gewijzigd op 09/12/2005 20:39:00 door Willem Jan Z
 
Jan Koehoorn

Jan Koehoorn

09/12/2005 20:44:00
Quote Anchor link
Hoi Willem-Jan,

ik moest dat ook ooit eens maken voor een site.
Kijk hier voor een voorbeeld
 

Pagina: 1 2 3 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.