Meine Homepage hat einen Code wie unten. Ich habe eine Javascript-Funktion onpage load
aufgerufen. In dieser Blinkfunktion blinkt der Eingabetext in dem bestimmten Zeitintervall.Seite Nach oben scrollen, wenn Sie mit der Maus auf eine beliebige Stelle im Körper klicken
<body onload="blink()";/>
<form>
<input autocomplete="off" onkeydown="if (this.value=='xxx xxx xxx ?') this.value='';StopBlinking();" type="text" class="search_input" name="searchword" id="searchword" onKeyup="request(event);" value="xxx xxx xxx ?" onclick="if (this.value=='xxx xxx xxx ?') this.value='';StopBlinking();" onfocus="if (this.value=='xxx xxx xxx ?') this.value='';StopBlinking();" onblur="if (this.value=='') this.value='xxx xxx xxx ?';"/>
<div class="clicked-area">
....Did something.....
</div>
</form>
</body>
<script>
function blink() {
document.getElementById("searchword").focus();
if(document.getElementById("searchword").value == "XXX XXX XXX XXX")
{
document.getElementById("searchword").value = "";
} else if(document.getElementById("searchword").value == ""){
document.getElementById("searchword").value = "XXX XXX XXX XXX";
}
timer = setTimeout("blink()", 500);
}
function StopBlinking()
{
clearTimeout(timer);
}
</script>
Auf dieser Seite, wenn haben überall auf der div
"clicked-area"
unerwartet meine Seite scrollt nach oben angeklickt.
Aber wenn ich Timeout-Methode aus dem Skript "timer = setTimeout("blink()", 500);",
entfernen, dann passiert es nicht. Kann mir jemand helfen, dieses Problem zu lösen?
Warum 'blink()' im Anführungszeichen? 'setTimeout (" blink() ", 500);'. Und welche Browser haben dieses Problem? – vothaison
Hai Vothaison. Alle Browser haben dieses Problem. –