0
我的AIR应用程序中有一个webkit HTML组件,并且希望能够响应webkit组件中由HTML生成的onclick和ondoubleclick等事件。有什么办法可以做到这一点?从webkit中调度事件以便在Adobe AIR中使用
我的AIR应用程序中有一个webkit HTML组件,并且希望能够响应webkit组件中由HTML生成的onclick和ondoubleclick等事件。有什么办法可以做到这一点?从webkit中调度事件以便在Adobe AIR中使用
虽然我花了一点时间才找到它。
这应该作为一个很好的起点客点: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;
}
HTML内容(在一个名为test.html的文件)加载到HTMLLoader对象中前面的示例可以访问在父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-08 19:59:43