<script type="text/javascript">
var x = prompt("enter x");
var y = prompt("enter y");
alert(x + " " + y);
</script>
この非常に単純なコードは、ユーザーにx、次に を要求yし、両方の値を含むアラートを表示します。デスクトップ ブラウザでは、window.promptとwindow.alertがブロックされているため、これは正常に機能します。
モバイル デバイス (この投稿の最後にあるユーザー エージェント) を介して表示する場合、最初のプロンプトはブロックされますが、[OK] を押すと 2 番目のプロンプトはブロックされないため、次のメッセージでアラートがすぐに表示されます (5最初のプロンプトで入力したと仮定します)。 ):
5 null
なぜこれが起こるのですか?解決できますか?
実際の例: http://jsfiddle.net/YEA5w/
Mozilla/5.0 (Linux; U; Android 2.3.5; en-gr; HTC_WildfireS_A510e Build/GRJ90) AppleWebKit/533.1 (Gecko のような KHTML) バージョン/4.0 モバイル Safari/533.1