Ergebnis 1 bis 8 von 8
  1. #1
    Emjay_Lee ist offline Jungspund
    registriert
    09-10-2012
    Beiträge
    12

    a:active mit JavaScript (Class Zuweisung funktioniert nicht)

    Hallo Liebes Forum,

    nach meiner Recherche wie ich denn active mit JavaScript am geschicktesten bastel, habe ich diese Lösung gebaut.
    Code:
    var menu = document.getElementById("nav").getElementsByTagName("a");
    //creates an array out of each "a" element
    for (var i = 0; i < menu.length; i++) {
    	if (menu[i].href == "http://" + window.location.hostname + window.location.pathname) {
    		// comparing each href vs this allows for query and hash variables
    		menu[i].className = "active";
    		// add class of "active" if there is a match
    	}
    }
    Für Beispielsweise diesen HTML-Code:
    Code:
    <!DOCTYPE html>
    <html>
    	<head>
    		<title>TEST NAVBAR</title>
    		<link rel="stylesheet" src="style.css" type="text/css"/>
    		
    	</head>
    	<body>
    		INDEX
    		<ul id="nav">
    			<li>
    				<a href="index.html" class="bla">Home</a>
    			</li>
    			<li>
    				<a href="about.html" class="bla">About</a>
    			</li>
    			<li>
    				<a href="contact.html" class="bla">Contact</a>
    			</li>
    		</ul>
    		
    	
    	</body>
    	<script type="text/javascript" src="navigation.js"></script>
    </html>
    In der Konsole bekomme ich für die Variable "menu" auch das gewünschte Ergebnis, genauso wie für "i" = 3;
    Doch leider wird der Klassenname nicht geändert. Habe googlet und verschiedene Wege versucht. Kann aber sein, da es sich bei mir um ein Array handelt, dass deswegen manche Lösungs-Ansätze nicht greifen. menu[i];

    Vllt habe ich einen kleinen Fehler eingebaut und finde den gerade nicht.

    Danke im Vorraus

    Emjay

  2. #2
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.685

    AW: a:active mit JavaScript (Class Zuweisung funktioniert nicht)

    Steht etwas in der Fehlerkonsole (Wo finde ich die Fehlerkonsole?)? Kannst du einen Testlink machen?

  3. #3
    Emjay_Lee ist offline Jungspund
    registriert
    09-10-2012
    Beiträge
    12

    AW: a:active mit JavaScript (Class Zuweisung funktioniert nicht)

    Ne in der Konsole finde ich kein Fehler. Ja hier ist der Link für einen Kleinen Test. TEST NAVBAR

    Grüße
    Emjay

  4. #4
    Emjay_Lee ist offline Jungspund
    registriert
    09-10-2012
    Beiträge
    12

    AW: a:active mit JavaScript (Class Zuweisung funktioniert nicht)

    Es muss ein Fehler in der If Anweisung sein. Bei einem else Befehl wird immer dieser ausgegeben !

  5. #5
    Avatar von miniA4kuser
    miniA4kuser ist offline Lounge-Member
    registriert
    12-07-2006
    Beiträge
    3.034

    AW: a:active mit JavaScript (Class Zuweisung funktioniert nicht)

    Das JavsScript hat keinen Fehler. Dein HTML ist nicht valide!
    Code:
    <link rel="stylesheet" href="style.css" type="text/css"/>
    Auch gehört das <script>-Element
    Code:
    <script type="text/javascript" src="navigation.js"></script>
    entwerder innerhalb des <head>-Bereichs oder innerhalb des <body>-Bereichs!
    Hoffe ich konnte helfen

  6. #6
    Emjay_Lee ist offline Jungspund
    registriert
    09-10-2012
    Beiträge
    12

    AW: a:active mit JavaScript (Class Zuweisung funktioniert nicht)

    RIGHT!
    hatte den Fehler gestern Nacht noch entdeckt

    Danke )))))

  7. #7
    Avatar von miniA4kuser
    miniA4kuser ist offline Lounge-Member
    registriert
    12-07-2006
    Beiträge
    3.034

    AW: a:active mit JavaScript (Class Zuweisung funktioniert nicht)

    Gern geschehn

    Aber wie du siehst, sollte man erst auf valides HTML prüfen, befor man an JavaScript geht...
    Hoffe ich konnte helfen

  8. #8
    Emjay_Lee ist offline Jungspund
    registriert
    09-10-2012
    Beiträge
    12

    AW: a:active mit JavaScript (Class Zuweisung funktioniert nicht)

    Klaro. Hatte das eigentlich auch getan. Da es aber nur eine Baustelle bei einem Größeren Projekt ist an dem ich arbeite. Und ich dabei die Baustellen immer mal wieder wechsel schleichen sich leider öfter so dumme scheiss Fehler ein. Man schaut dann halt eher auf die Funktionen (Javascript) und nicht auf das Gerüst (HTML).

    Trotzdem Danke )

Ähnliche Themen

  1. Antworten: 3
    Letzter Beitrag: 22-02-2011, 17:56
  2. Pseudoklassen a:active geht im IE nicht
    Von romeo22 im Forum CSS und (X)HTML
    Antworten: 7
    Letzter Beitrag: 30-01-2008, 00:36
  3. Antworten: 21
    Letzter Beitrag: 24-01-2008, 21:08
  4. Antworten: 2
    Letzter Beitrag: 09-12-2006, 19:09
  5. Antworten: 2
    Letzter Beitrag: 01-10-2002, 15:37

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •