MozillaZine.jp フォーラム
https://forums.mozillazine.jp/

xulrunnerでnsIDOMModalContentWindowにアクセスしたい。
https://forums.mozillazine.jp/viewtopic.php?f=28&t=9287
ページ 11

作成者:  yokada [ 2009年10月26日(月) 00:33 ]
記事の件名:  xulrunnerでnsIDOMModalContentWindowにアクセスしたい。

環境
・Windows XP
・xulrunner 1.9.1.3 (=Firefox3.5.3?)

現在、xulrunnerで簡単なウェブブラウザを作っていて、
ウェブページ(非特権ドキュメント)からshowModalDialogで、子ウィンドウを呼び出す時に、
値を受け渡すjavascriptを実行したところ、
Firefoxだと受け渡せるのですが、
自作ブラウザだと、受け渡せません。

以下は、htmlに記述してあるjavascriptです。

////////////// 親ページ
コード:
<script>
function open_dialog(){
  var ret = window.showModalDialog('./sub.html', '子ウィンドウへ渡す値');
  alert(ret) //=> Firefoxだと、子ページの('親ページに戻したい値')が返り、自作ブラウザだとnullが返る。
}
</script>


///////////// 子ページ(sub.html)
コード:
<script>
function close_dialog()
{
  var dargs = window.dialogArguments;

  // firefoxだと、dargs変数には、親ページのshowModalDialogの第2引数の値が入りますが、
  // 自作ブラウザですと、nullとなります。

 var args = window.arguments;
 
  // 一方、args変数には、自作ブラウザだと、showModalDialogの第2引数の値が入ってきて、
  // Firefoxだとnullとなります。

  window.returnValue = "親ページに戻したい値";
  window.close();
}
</script>


というわけで、window.returnValueとwindow.dialogArgumentsに入る値は、
自分でセットしないといけないのかな(Firefox3では、動作しているから)、と思いまして、
表題のタイトルとさせていただきました。まったく的外れかもしれませんが。

非特権ドキュメントでのwindow.dialogArgumentsとwindow.returnValueの
値の取得方法に関するヒントでもよいので、ご教授いただければ幸いでございます。
なにか情報をお持ちの方何卒よろしくお願い申し上げます。

ページ 11 All times are UTC + 9 hours
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/