document.getElementById("Navigation2").onclick = zeigeSeite;
Wenn du im HTML auch genau <ul id="Navigation2"> notiert hast, müsste das klappen.
Das getElementById funktioniert natürlich nur,
- wenn das <script>..</script> im HTML-Quellcode nach der Navigation folgt,
- oder du den Code beim window.onload aufrufst.
window.onload = function () {
// Event-Handler registrieren
};
http://molily.de/js/einbindung.html#ereignisbasierung
http://molily.de/js/einbindung.html#traditionelles-event-handling
function zeigeSeite (e) {
var e = e || window.event;
var target = e.target || e.href;
Wieso hast du diese Zeile abgewandelt? Sie dient zum browserübergreifenden Zugriff auf das Zielelement. Da sollte schon e.target || e.srcElement stehen. (srcElement ist die Variante für den IE.)
var elementName = target.nodeName,
aElement = false;
// Überprüfe, ob das Zielelement ein Link oder ein Bild im Link ist:
if (elementName == "a") {
Das ist schon richtig gedacht, allerdings gibts hier einen Fallstrick:
nodeName gibt einem den Elementnamen immer in Großschreibung zurück (zumindest in HTML und XHTML-als-HTML, nicht in XHTML-als-XML).
Entweder prüfst du also
if (elementName == "A") ...
oder du vereinheitlichst das, indem du mit toLowerCase Kleinschreibung erzwingst:
var elementName = target.nodeName.toLowerCase(),
aElement = false;
Mathias