0

AIR アプリケーションに Webkit HTML コンポーネントがあり、Webkit コンポーネントの HTML から生成された onclick や ondoubleclick などのイベントに応答できるようにしたいと考えています。これを達成する方法はありますか?

4

1 に答える 1

1

ありますが、見つけるのに少し時間がかかりました。

これはかなり良い出発点として役立つはずです: http://livedocs.adobe.com/flex/3/html/help.html?content=ProgrammingHTMLAndJavaScript_04.html

キーコードは次のとおりです。

var html:HTMLLoader = new HTMLLoader();
var foo:String = "Hello from container SWF." 
function helloFromJS(message:String):void {
    trace("JavaScript says:", message);
}
var urlReq:URLRequest = new URLRequest("test.html");
html.addEventListener(Event.COMPLETE, loaded);
html.load(urlReq);

function loaded(e:Event):void{
    html.window.foo = foo;
    html.window.helloFromJS = helloFromJS;
}

前の例で HTMLLoader オブジェクトにロードされた HTML コンテンツ (test.html という名前のファイル内) は、親 SWF ファイルで定義された foo プロパティと helloFromJS() メソッドにアクセスできます。

<html>
    <script>
        function alertFoo() {
            alert(foo); 
        }
    </script>
    <body>
        <button onClick="alertFoo()">
            What is foo?
        </button>
        <p><button onClick="helloFromJS('Hi.')">
            Call helloFromJS() function.
        </button></p>
    </body>
</html>
于 2009-04-08T04:36:48.013 に答える