Moin!
Ich schreibe (immer noch) an meinem Artikel über Bookmarklets. Als Anwendungsbeispiel habe ich mir einen Cookie-Editor ausgedacht, in dessen Code sowohl eine for-Schleife als auch Aufrufe der Methode document.write enthalten sind. Der einzige Browser, der mit meinem Code Probleme hat, ist Apples Safari. Meine Nachforschungen mit deutlich vereinfachten Code-Schnipseln führten mich zu der Annahme, dass der Safari document.write-Aufrufe in onclick-Handlern und javascript-Links nicht mag. Getestet habe ich dies mit folgendem Code:
<script type="text/javascript">
<!--
[code lang=javascript]function p() {
var j = 0;
for (; j < 5; ++j)
document.write(''+j);
}
//
~~~-->
</script>
<p><code>document.write</code> über
<ul>
<li><a href="javascript:`p()`{:.language-javascript}">javascript:</a></li>
<li><a onclick="`document.write('hallo')`{:.language-javascript}">onclick</a></li>
</ul>[/code]
Woran könnte es liegen, dass Safari document.write in diesen Fällen nicht mag? Könnte jemand überprüfen, was der Konquerer aus diesem Beispiel macht?
Viele Grüße,
Robert