Sep 2008

Voreingestelles Verhalten verhindern

 
 
Hinweis: evt.preventDefault(); übernimmt im DOM Event Handling die Aufgabe des Aufrufs return false;, der die ursprüngliche Aktion eines HTML-Elements außer Kraft setzt.

Einige HTML-Elemente können bei Ereignissen auch ohne Javascript Aktionen durchführen – ein Link z.B. führt zu einer neuen Seite, wenn der Benutzer auf den Link klickt und ein Formular wird bearbeitet, wenn der Button Absenden geklickt wird.

Wenn ein Javascript-Event an solche Elemente gebunden wird, soll das voreingestellte Default-Verhalten des Elements unterbunden werden.

Wenn das Ereignis in Standard-konformen Browsern wie Firefox, Safari oder Opera durch addEventListener oder in Internet Explorer durch attachEvent gebunden wurde, reicht der Aufruf return false nicht immer aus. Stattdessen wird preventDefault() in Standard-konformen Browsern aufgerufen und für IE die Boolesche Variable event.returnValue auf false gesetzt.

DOM: preventDefault()
Kann das Ereignis canceln. Verhindert jegliche Aktion für das Ereignis, etwa das Laden einer URL, wenn ein Hyperlink geklickt wurde
IE: event.ReturnValue
Keine Methode, sondern eine Boole'sche Eigenschaft, die false gesetzt wird, um die vorgegebene Aktion für das Element zu canceln

Wrapper für preventDefault und window.event.returnValue

function stopDefault(evt) {
    if (evt && evt.preventDefault) {
        evt.preventDefault();
    } else if (window.event && window.event.returnValue) {
        window.event.returnValue = false;
    }
}
   


Copyright © 2000 - 2010 Media Engineering Alle Rechte vorbehalten
Design + Programmierung Media Engineering U. Häßler 47506 Neukirchen-Vluyn • Impressum und Nutzungsbestimmungen