Nicht unbedingt falsch. Deins fürt das Script in einer bestimmten Zeit immer wieder aus. Und mit Timeout wird das Script nur verzögert gestartet bzw. die Funktion aufgerufen. Also ist es nicht falsch, im direkten Sinne.
Achja, nochmal wegen dem Counter... So funktioniert er richtig:
$this->bbcode_second_pass_code('', '<html>
<head>
<title>Test</title>
<script type="text/javascript">
<!-- JS Ticker by Hadriel //-->
<!-- Code part //-->
var seconds = 10;
function count_down () {
seconds = seconds - 1;
if (seconds > 0) {
document.all.a.innerText = "Noch " + seconds + " Sekunden";
window.setTimeout("count_down()", 1000);
} else {
document.all.a.innerText = "Countdown abgelaufen!";
}
}
window.setTimeout("count_down()", 1000);
</script>
</head>
<body>
<span id="a"><script language="text/javascript">count_down();</script></span>
</body>
</html>')
Damit wird der Counter solang ausgeführt bist Zeit abgelaufen ist, wenn dies geschehen ist, kommt kein nachfolgender Timeout! Weil der CountDown abgelaufen ist. So einfach 