如何使用AS3运行jQuery函数

7

我想在AS3中调用我的HTML页面上的jQuery函数。

这是我的jQuery函数:

function loadImage(imageNumber)
  {
    imageURL = '<img src="images/image' + imageNumber + '.jpg">';
    $("#imageBox").html(imageURL);
  }

这是我的Flash文件在HTML页面中的设置:
<param name="allowScriptAccess" value="always" />
<param name="bgcolor" value="#ffffff" />    
<embed src="links.swf" quality="high" bgcolor="#ffffff" width="320" height="242" name="links" align="middle" allowScriptAccess="always" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.adobe.com/go/getflashplayer" />

最后... 这是我在.swf文件中的AS3脚本:

function gotoImage1(e:MouseEvent):void {
    var jscommand:String = "loadImage(1);"
    var link:URLRequest = new URLRequest("javascript:" + jscommand + "");
    navigateToURL(link, '_self');
}

非常感谢您抽出时间查看并提供帮助,十分感激。

最亲切的问候,Tom

2个回答

6

1
感谢您的快速回复,虽然我成功显示了alert("test"),但是我的函数无法运行。我在HTML页面顶部定义的函数名为“loadImage”,同时我也传递了一个变量给这个函数。if(ExternalInterface.available){ ExternalInterface.call('loadImage(1);'); } - Tisch
不用担心。我已经让它正常工作了。非常感谢你的回答。非常感激 :) - Tisch

1
最终解决方案是:
function gotoImage2(e:MouseEvent):void 
{
    if(ExternalInterface.available)
    {
        ExternalInterface.call('function(){ loadImage(2); }');
    }
}

以防万一,如果有人想看看它是如何结束的...


为什么不直接调用你的JavaScript方法,而要使用匿名函数呢? ExternalInterface.call('loadImage', 2); - duTr

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接