Apple の脅威の通知と金銭目当てのスパイウェアへの対策について

しばらく返答が寄せられていないようです。 再度ディスカッションを開始するには、新たに質問してください。

safari5.1.4でJavaScriptのonload×submitの処理がこれまでと違う

safari5.1.4の動作検証で困っております。


<事象>

1、ページAのonload処理でdocument.formid.submit()を実行し、ページBに転送。

2、ページB内の記述でinputタグの属性情報を取得する処理を記述。

3、2の処理で取得できる情報はページAの属性情報である。

→これが問題


現在、上記プログラムで動作しており、

自動転送をして転送先に情報が読み込めることが必須条件なのですが、

回避策が見つかりません。


そもそもバージョンアップによるバグなのでしょうか?仕様なのでしょうか?

いずれにしても回避策があればご教授いただきたいです。



<サンプルソース>

※safari5.1.4のみ、ページAを読み込むとページBに自動転送されますが、

ページBのJavaSctiptにもかかわらずページAの「test失敗」がalertで表示されます。

※その他のブラウザでは、ページAを読み込むとページBに自動転送されて、

ページBのJavaSctiptでページBの「test成功!!!!!」がalertで表示されます。


◆ページA(test.html)

<html>

<head>

<script type="text/javascript">

function test(){

document.aa.action = "test2.html";

document.aa.submit();

}

</script>

</head>



<body onload="test();">

test1

<form name="aa" action="test.jp" method="POST">

<input type="hidden" name="test1" value="test失敗">

</form>

</body>

</html>


◆ページB(test2.html)

<html>

<head>

<script type="text/javascript">

function test(){

alert(document.getElementsByTagName('input')[0].value);

}

</script>

</head>

<body onload="test()">

test2

<form name="aa" action="test.jp" method="POST">

<input type="hidden" name="test1" value="test成功!!!!!" />

</form>

</body>

</html>

投稿日 2012/03/23 19:54

返信
返信: 4

2012/03/26 21:30 R田中一郎 への返信

ご回答いただきありがとうございます。

Webkit Nightly Buildsで実験しましたら、

「test成功!!!!!」が表示されました!!


>今までのバージョンや他ブラウザで問題がなく、

>ナイトリービルドでも正常動作する

現時点でこの状況にありますのでバグの可能性も高そうですね。

しかしながら私はこのコミュニティ以外に共有先がわかっておりません。

申し訳ありませんが、ご存知でしたらご教授いただけますでしょうか?

2012/04/02 09:54 山田浩輔 への返信

情報共有だとフィードバックのページやSafariのメニューから「Appleにバグレポートを送信」があります。

ナイトリービルドでは正常に動作しているのでバージョンアップで直るかと思っていましたが、

先日出たSafari5.1.5ではまだ解決していないですか?


Safari5.1.4からJavaScriptのパフォーマンスが向上したそうですが、

どうも挙動が変わっている(間違っている)という情報もあるようです。

http://blog.artvecta.net/archives/541

safari5.1.4でJavaScriptのonload×submitの処理がこれまでと違う

Apple サポートコミュニティへようこそ
Apple ユーザ同士でお使いの製品について助け合うフォーラムです。Apple ID を使ってご参加ください。