はじめまして、ココには初めて質問ささせてもらいます。
タイトル通り、VB6+WebBrowserで、自作ブラウザーを作成していますが、
JavaScript の関係で大変困っています。
●ホームページ側のソース
ページ側で Javascript を使用し、
var newWin = window.open("","test02","height=400,width=400");
newWin.docuemnt.write("テスト");
の様な記述がしてあると、Javascriptが「アクセスが拒否されました」
とのエラーをだしてしまいます。
※IEでは動きます。また、URLを省略せず、空白のページを
指定してやると、自作ブラウザでも動きました。
●自作ブラウザ側
NewWindow2 メソッドにて、
Set frmNew = New frmBrowser '新しいフォームを作成。表示。
frmNew.childFlag = True
Load frmNew
'新しいWebBrowserに表示するように設定する。
Set ppDisp = frmNew.WebBrowser1.object
Cancel = false
としていますが、Javascript の open.window にてURL指定しない
場合のみ、この現象が起きています。
この現象の原因、及び、回避方法をご存知でしょうか?。
宜しくお願い致します。
> JavaScript の関係で大変困っています。
厳密にはJavaScriptではなく、JScriptですね。
> var newWin = window.open("","test02","height=400,width=400");
> newWin.docuemnt.write("テスト");
『newWin.docuemnt.write("テスト");』ではなく、
『newWin.document.write("テスト");』でなければいけません。
もし、スクリプトのエラーをVB側で検知したいのであれば、
NavigateComplete2イベント発生時に、pDisp.Document.parentWindow を捕らえ、
windowオブジェクトのonerrorイベントを調べるようにしてみて下さい。
返信が大変遅くなってしまいました。
魔界の仮面弁士 さんありがとう御座います。
newWin.docuemnt.write については、私の書き損じでした。
また、私の書き方が悪く、何を問題にしているのかが、判らない文面でした。
再度、問題を記載します。
●やりたいこと
自作ブラウザー(VB6)にて、
1.JScript の window.open にて新しいウィンドウを開け。
2.そこへ、親ウィンドウから、JScript へ文章を書き込む。
と言う物です。
基本、HTML側のソースは触ることが出来ません。
●問題点
現在の問題点は下記の通りです。
1.親ブラウザから子ブラウザを開ける。
newWin = window.open("","test02","height=400,width=400");
の様に、URL を省略している。
2.親から子へ、JScriptを使用し、書き込みをする。
この時、newWin.document.writeを使用
3.「アクセスが拒否されました」のエラーが発生する。
●調査
1.URLに空白のページを指定してやると、エラーが発生しない。
例>window.open("brank.html","test02","height=400,width=400");
2.URL に about:brank を指定しても、エラーが発生する。
●参考
I.E.の場合、エラーは全くでません。
どうにかして、JScript で書かれている、
newWin = window.open("","test02","height=400,width=400");
newWin.document.write("テスト");
に対応する方法はないでしょうか?。
ツイート | ![]() |