2

我有一个 .swf,我使用 jQuery SWF 对象插件 ( http://jquery.thewikies.com/swfobject ) 将它嵌入到 HTML 中。我需要从 javascript 函数中调用 .swf 中的许多函数。我通过调用 flash.external.ExternalInterface.addCallback() 使这些 actionscript 函数可供 javascript 访问。然而,当我拨打电话时,什么也没有发生。我以前发生过这种情况,似乎是当您从 jQuery 引用 .swf 时,您无法调用 flash 函数。无论如何(除了不使用jQuery)?

谢谢。

4

4 回答 4

3

我从未使用过 jquery swfobject 插件,但如果你在嵌入代码中添加一个 id 参数,你可以通过

swf = document.getElementById("player"+i);
swf.callToFlash();
于 2009-09-25T12:49:53.003 回答
1

我有同样的问题。你可以用$('#myflashelement').context.myactionscriptfunction(arg)它来修复它。为方便起见,我制作了一个 jQuery“插件”来调用它们,并且不依赖于context我的所有代码:

(function ($) {
    $.fn.callAS = function() {
        var func = arguments[0];
        var args = Array.prototype.slice.call(arguments, 1);
        return this.context[func].apply(this.context, args);
    };
})(jQuery);

你可以用$('#myflashelement').callAS('myactionscriptfunction', arg).

于 2010-04-24T19:00:42.357 回答
1
$('#myflashElement')[0].myASFunction(var1, var2);

为我工作

于 2011-03-24T10:56:12.573 回答
0
$('#id_you_gave_swfobject').your_externalInterface_callback();

在 jQuery 中

于 2009-12-11T04:19:36.927 回答