Die Verweisadresse wird einer eigenen Funktion (hier: DoHrefLock()) übergeben. Diese prüft anhand eines globalen Flags (hier: bHrefLock), ob Verweise ausgeführt werden dürfen:
Falls ja (bHrefLock ist false), wird das Flag gesetzt, ein entsprechener Timeout (zur Aufhebung der Blockade) erzeugt und der Verweis ausgeführt.
Falls nicht (bHrefLock ist true), kehrt sie sofort zurück.
Demo: Dieser Link ist nach dem Anklicken für 4 Sekunden blockiert.
Beispiel:
Javascript im Header
var bHrefLock = false;
function DoHrefLock(adr, ms) {
if (bHrefLock) return; bHrefLock = true;
window.setTimeout("bHrefLock=false", ms);
self.location.href = adr;
}
Die Verweisadresse wird einer eigenen Funktion (hier: DoBtnLock()) übergeben. Diese speichert das <BUTTON>-Objekt in einer globalen Variablen, disabled den Button, erzeugt einen entsprechenen Timeout (zur Aufhebung der Blockade) und führt den Verweis aus.
Demo: (Button ist nach dem Anklicken 3 Sekunden lang deaktiviert)
Beispiel:
Javascript im Header
var oLockBtn;
function DoBtnLock(btn, adr, ms) {
(oLockBtn = btn).disabled = true;
window.setTimeout("oLockBtn.disabled=false", ms);
self.location.href = adr;
}