1

AIR に埋め込まれた Webkit を使用して、HTML+Javascript で小さなブラウザーを作成しようとしています。

ユーザーがiframeに入力したURLにページを表示しています。

そこから、私はしたいと思います:

  1. たとえば、タブにページを表示するために、フレームのコンテンツにアクセスします。
  2. たとえば、URL バーを更新するために、ユーザーがフレームをクリックしたときにアラートが表示されます。

1)については、セキュリティのためにブラウザで禁止されていることを知っています。ただし、これは AIR アプリで可能であるはずだと思います'、おそらくユーザーの許可を求めることによって可能です (Firefox の Gecko のように)。

1)のやり方を知っている人はいますか?イベントや何かすることはありますか 2) ?

ご協力いただきありがとうございます、

J.

4

3 に答える 3

2

ジュリアンが私を訴えそうなので、返事します ;)

では、Flex Builder を使用していないのですか? そうであれば、右側に小さな赤い点が表示されます。Flex Builder は時々不機嫌になり、ソリューションを閉じて再度開くのに役立ちます。そして極端な場合、IDE 自体とプロジェクトのリロード。ところで: デスクトップ (AIR) アプリケーションを作成しましたか? HTMLLoader は AIR専用です。

Flex Builder IDE を使用していない場合は、このリンクを参照することをお勧めします。Adobe が推奨しています (ここ)。

あなたのコードは、私の側では完全にうまくコンパイルされます。ただし、私を混乱させるのは、ExternalInterface で達成しようとしていることです。

于 2009-02-23T17:46:42.043 に答える
1

フレームのコンテンツにアクセスするには

ifrmiframeの ID があるとします。

var html:HTMLLoader = new HTMLLoader();
// ... 
// in the `complete` event handler
trace(html.window.document.getElementById("ifrm").innerHTML); // content

ユーザーがフレームをクリックしたときにアラートを受け取る

iframe サブ要素への変更をキャッチするための JavaScript イベント ハンドラーを使用できる場合は、AS 関数/イベント ハンドラーを呼び出すことができます。

あなたはこれを読みたいと思うでしょう:)

于 2009-02-21T18:32:11.450 に答える
0

ダーク、

あなたなしで何ができますか;) あなたはアドビか何かで働いていますか?

私は (まだ) FB を持っていません。単純な基本的なコンパイラ mxmlc を使用しているだけです。HTMLLoader が AIR だけで動作しているとは知りませんでした!! ;) mxmlc を使用すると、スムーズにコンパイルされます...

だから私は進みます...

ちなみに、外部インターフェイスは、「メイン」の JavaScript からフレームにページをロードできるようにすることです (私は AS3 よりも JS に堪能なので、AS3 を最小限に抑えたいと考えています)。

ここで、別の方法を追加します。AS3 の関数からメインの JS の関数を呼び出し、HTMLLoader の「COMPLETE」イベントを処理し、jQuery で読みたい HTML の文字列を JS に渡すことができます。 .

于 2009-02-23T17:59:59.810 に答える