Hallo,
Kannst du mir womöglich erklären, warum das „this“ bei solchen Aufrufen weggelassen werden kann?
<a href="seite.html" onclick="[code lang=javascript]alert('Ziel: '+href);return false
">Ziel</a>[/code]
Die Stichwörter lauten Execution Contexts und Scope Chain. Wenn man irgendwo einen Identifier notiert, wird die Scope Chain durchlaufen, um das entsprechende Objekt zu finden. this ist hier das erste Objekt, bei dem das Objekt href gesucht wird, window bzw. das globale Objekt der letzte.
Bezieht sich der Aufruf hier ohne weitere Angabe zwingend auf das aktuelle Objekt?
Ja. Wenn dort kein solches existiert, wird die Scope Chain abgearbeitet.
Mathias