2011-12-21 3 views
1

AIRアプリケーションでHTMLコンポーネントのMouseEventを送出しようとしています。この方法で、ActionScriptコードを使用してHTML要素のクリックをシミュレートします。ここに私のAIRアプリケーションのコードは次のとおりです。ActionScriptでAIRのHTMLエレメントをクリックします。

<?xml version="1.0" encoding="utf-8"?> 
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009" 
         xmlns:s="library://ns.adobe.com/flex/spark" 
         xmlns:mx="library://ns.adobe.com/flex/mx"> 

    <fx:Script> 
     <![CDATA[ 
      private function clickHTML(event:MouseEvent):void { 
       var e:MouseEvent = new MouseEvent(MouseEvent.CLICK,true,false,10,10); 
       html.dispatchEvent(e); 
      } 
     ]]> 
    </fx:Script> 

    <s:Button label="Click HTML" x="10" y="10" click="clickHTML(event)"/> 

    <mx:HTML id="html" x="10" y="50" width="100" height="100" 
      location="page.html" click="trace('html was clicked')"/></s:WindowedApplication> 
ここ

はpage.htmlのためのコードは次のとおりです。

<html> 
<body onClick="alert('Clicked!')" bgcolor="grey"> 
Page loaded 
</body> 
</html> 

自分でHTML要素をクリックすると、そこに警告してたMouseEventがあるが、イベントがでディスパッチされたときスクリプトはMouseEventのみです。

どのように動作させるには?

答えて

1

あなたのHTMLコンテンツに何か何かを実行するには、JavaScript関数を直接呼び出す必要があります。 チェックこのarcticle:

Accessing HTML DOM and JavaScript objects from ActionScript

+2

はそれが仕事だ、あなたの助けをいただき、ありがとうございます。また、ボタンをクリックする方法もわかりました。 ActionScriptでidボタンmyButtonが のHTMLボタンがある場合は、次のようにします。 'var btn:Object = html.htmlLoader.window.myButton; btn.click(); ' ありがとう@kostik – Andrey

関連する問題