• ベストアンサー

開いたウインドーの、ハンドルはどこに?

 ウインドー、オープンは、できたのですが、  その新ウインドーの要素・   エレメントの、ハンドルがわかりません。  オープンした返値、 Widが、 別ウインドーのハンドルじゃ、ないのでしょうか  親ウインドーから、新ウインドーの内容を読み出したいのです。   <html> <head> <script language="JavaScript" type="text/javascript"> wid = window.open("http://kikitai.teacup.com/205/c221.html"); var taglist = ""; for (i = 0; i < wid.document.all.length; i++) { taglist += wid.document.all(i).tagName; taglist += " "; } //tx_hd = wid.prompt( taglist, ); document.writeln("<pre>"); document.writeln("AAA"); document.writeln(taglist ); document.writeln("AAA"); document.writeln(wid ); document.writeln("</pre>"); </script> </head> <body> オープンウインドー テスト<br> </body> </html>

質問者が選んだベストアンサー

  • ベストアンサー
  • 15mm
  • ベストアンサー率65% (65/100)
回答No.5

>4 おっと、文章力の無い自分に泣けてきます・・・; あの文章は#2への返事への回答と言う流れで、 「サンプル代わりにどうぞ」のつもりだったのですが 今見るとだいぶ言葉が足りてなかったみたいです。 他サイトのソースは参照できないという結論を出したかったのですがそれすらも書き忘れてたみたいで。 誤解を招く発言をしてしまったことをお詫びいたします。 ・・・というわけで#3の補足とさせていただきます。 文章力つくまで書き込み控えたほうがいいですかね;;

DEC2007
質問者

お礼

丁寧な回答ありがとうございます。検索エンジンは難しいみたいですね。  以前、HTMLで、  書かれている検索エンジンの、雛形をダウンロードした経験があるので、できるだろうと思ったのですが。  方向を変えて、  開いたURLを保存して、ローカルファイルにしてから、……で、しょうか?  たまたま、読みました、グーグルの検索エンジンの解説も、  一度ハードディスクに保存して、解析する。……と、いうことでした。  丁寧なご教授ありがとうごさいます。

すると、全ての回答が全文表示されます。

その他の回答 (4)

  • auty
  • ベストアンサー率58% (284/486)
回答No.4

>>> avascript:alert(document.getElementsByTagName('html')[0].innerHTML); これは自分自身を読んでいます。(子から子) 「親ウインドーから、他のサイトの新ウインドーの内容を読み出す。」と言うことにはなっていないですね。

すると、全ての回答が全文表示されます。
  • 15mm
  • ベストアンサー率65% (65/100)
回答No.3

セキュリティ上の問題でキャッシュページを参照することはできないと思います。 なのでそんな危ない関数もないと思います。 キャッシュ保存フォルダは実際には存在しないようで、ファイル操作もできないようになっていました。 (IE7・ローカル上でScripting.FileSystemObjectで実験・失敗) 手動でキャッシュファイルを開くしかないかもしれません。 innerHTMLのほうなんですが・・・ とほほさんの所でリファレンス見て自分で試してみただけなのでサンプルは知らないです。すみません (HTML内の要素).innerHTMLでその要素のなかのHTMLソースを局部的に参照するというものなのですが 内容の少ないページを開いた状態(じゃなくてもいいですが)でアドレスバーに javascript:alert(document.getElementsByTagName('html')[0].innerHTML); や、 javascript:alert(document.getElementsByTagName('html')[0].innerText); と入れてEnter押してみてください。 なんとなく悟っていただけると思うんですがねぇ・・・ ただし、実際のソースではなくブラウザが読み込んだ状態のソースを参照しているみたいです。 中途半端な回答ですがご容赦くださいm(_ _)m

すると、全ての回答が全文表示されます。
  • 15mm
  • ベストアンサー率65% (65/100)
回答No.2

QNo.3939840の者です。 >document.writeln(wid ); は >wid = window.open("http://kikitai.teacup.com/205/c221.html"); で開いたURLのソースを参照しようとしているのでしょうか? Perl等のノリではできないみたいです。 wid.document.body.innerHTML ならば新ウィンドウの<body>タグ内のソース(に近いもの)は参照可能です。 widはあくまでオブジェクトが入っているだけなのでそれの何を参照するのか指定してあげる必要があります

DEC2007
質問者

お礼

 オープンウィンド、で、 >で開いたURLのソースを参照しようとしているのでしょうか?  キャッシュページの、ソースを読めればいいのですが。  キャッシュページ操作関数はありませんか?    wid.document.body.innerHTML < これの使い方のサンプルプログラムはありませんでしょうか?  検索してみたのですがサンプルプログラムが見つかりません。

すると、全ての回答が全文表示されます。
  • auty
  • ベストアンサー率58% (284/486)
回答No.1

------------------------------------------------------------ ・ JavaScriptではそれを含む同じ出身のウィンドウやドキュメントのプロパティしか読むことは出来ません。つまり、 http://kikitai.teacup.com/205/c221.html は、別のサーバにあるページですから、JavaScriptでは内容を読み取ることはセキュリティ上できないことになっているわけです。 ・ 新ウインドーのサイズとか移動などしか出来ません。

DEC2007
質問者

お礼

 ありがとうごさいます。  迷路にはまっているところを、助けていただきました。  どうも、おかしいなぁ……とは感じていたのですが。  同じウインドウに、もって来る。  そんな方法を考えないと、ダメなんですね。  アドバイスありがとうございます。

すると、全ての回答が全文表示されます。

専門家に質問してみよう