問題をデバッグしているところ、FirefoxとSafariがonclickJavaScriptを処理する方法に奇妙な動作が見つかりました。
これが私のコードです:
<form id="createMessageForm" action="onclick.php?refresh=<?php echo ++$_REQUEST['refresh'];?>" method="post" >
<input type="hidden" id="iteration" value="1"/>
</form>
<a href="page2.html" target="_blank" onclick="document.getElementById('createMessageForm').submit();return true;">Hello</a>
これをFirefoxにロードすると、常に「page2」が開きます。しかし、これをSafariにロードすると、「page2」が開くのは10回に1回以下です。これは、ブラウザが「trueを返す」を終了できるかどうかに依存するようなものです。フォームが送信される前のステートメント。
JavaScriptは常にシングルスレッドだと思っていたので、そのようなコードで予想される動作は何ですか?