tami: Endlosschleife abfangen

Beitrag lesen

hi Tom,

Wenn Du auch der Meinung bist, dass das Szenario zu einem solchen Fehler führen könnte, müssen in dem Handler (eigentlich innerhalb _und_ außerhalb) also Maßnahmen ergriffen werden, um das abzufangen. Der Handler muss also in seinem Kontext eine Information ablegen, ob er schon mal eine Ersetzung durchgeführt hat. Oder gibt es bei JavaScript auch Static-Variablen?

Du kannst doch mit einer Closure mitzählen:

  
<button id="test">klick</button>  
<script>  
[code lang=javascript]createMemorizer = function() {  
    var counter = 0;  
    memFunc = function() {  
        if (counter === 0) {  
            alert("hallo");  
        } else {  
            alert ("vorbei");  
        };  
        counter += 1;  
    }  
     return memFunc;  
}  
myButton = document.getElementById("test");  
myButton.onclick = createMemorizer();  

~~~</script>[/code]  
  
mfg  
  
tami