HTML Tidy mit einer Zeile JavaScript

Mit einer einfachen Zeile JavaScript kann man kaputtes HTML in gut strukturiertes XHTML umwandeln.

function tidy(document) {
    return new XMLSerializer().serializeToString(
new DOMParser().parseFromString(document, 'text/html'));
}
console.log(tidy("<title>Seitenname</title><h1>Überschrift</h2><p>Das ist ein Test<p>Noch eine Zeile<ul><li>Liste</ul><h3>Text</h1>"));

Ausgabe ist:

<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Seitenname</title></head><body><h1>Überschrift</h1><p>Das ist ein Test</p><p>Noch eine Zeile</p><ul><li>Liste</li></ul><h3>Text</h3></body></html>

Gefunden hier: http://stackoverflow.com/questions/12092532/how-to-convert-html-to-valid-xhtml

Parameterübergabe bei window.setTimeout

Als ersten Parameter von window.setTimeout() kann auch ein Funktionszeiger (function pointer) anstatt eines Strings übergeben werden. So ist es möglich, die nach dem Timeout aufgerufene Funktion mit beliebigen Parametern zu versorgen, wie in folgendem Beispiel gezeigt ist.

var elementId = this.id; // oder irgend ein anderer Wert
window.setTimeout(function() { macheWas(elementId) }, 1000);

Hier wird die Funktion „macheWas“ nach einer Sekunde mit dem Parameter „elementId“ aufgerufen.

jQuery 1.3.x ist wesentlich schneller als 1.2.x

Die 1.3er Version von jQuery ist, zumindest unter OS-X mit Firefox, wesentlich schneller als die Vorgänger-Version 1.2. Kurz nach dem Laden einer HTML-Seite entsteht nun nicht mehr diese ärgerliche Rechenpause bei der der Browser kurz hing. Ein Upgrade lohnt sich.

Doppeltes Formular-Absenden mit jQuery verhindern

Mit Javascript kann man verhindern, dass der „Senden“ Button in Web-Formularen doppelt geklickt wird. Wir setzen ihn dazu automatisch auf „disabled“, wenn das Formular gesendet wurde. In jQuery sieht das etwas so aus:

$("#myForm").submit( function(){ $("#submitButton").attr("disabled", "true"); } );

Zur jQuery-Dokumentation von Events/submit