AS3 影片中的 AS2 影片无法访问 flashvars...或任何父影片变量

发布于 2024-10-20 06:17:04 字数 539 浏览 2 评论 0原文

不是我的代码,试图在第 11 小时修复它。

尝试从加载到 AS3 影片中的旧版 AS2 影片访问 flashvars

AS3 影片使用 com.gskinner.utils.SWFBridgeAS3 来实现 AS2 兼容性。

html 文件中定义的 flashvar 在 AS2 影片中无法访问。不像“只是变量”(旧的 AS2 flashvars 方法),也不像

stage.loaderinfo.parameters 

AS3 提供的那样。

似乎没有任何效果,甚至访问父 AS3 影片中定义的任何变量也是如此。

那么,在 AS3 电影中:

var myvar = 5;

在 AS2 电影中:

trace(myvar); => undefined
trace(parent.myvar); => undefined

我该如何解决这个问题?

谢谢你!

Not my code, trying to fix it at the 11th hour.

Trying to access flashvars from a legacy AS2 movie loaded inside an AS3 movie

The AS3 movie uses com.gskinner.utils.SWFBridgeAS3 for AS2 compatibility.

The flashvars defined in the html file are not accessible in the AS2 movie. Not as "just variables" (old AS2 flashvars method) nor as the

stage.loaderinfo.parameters 

which AS3 would provide.

Nothing seems to work, even accessing any variable defined in the parent AS3 movie.

So, in the AS3 movie:

var myvar = 5;

in the AS2 movie:

trace(myvar); => undefined
trace(parent.myvar); => undefined

How can I work around this?

Thank you!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

如果没有你 2024-10-27 06:17:04

使用 SWFBridge 站点上提供的信息,您应该执行以下操作:

// in the AS2 SWF:
var myBridge:SWFBridgeAS2 = new SWFBridgeAS2("123456", clientObj);


// in the AS3 SWF:
var myBridge:SWFBridgeAS3 = new SWFBridgeAS3("123456", clientObj);

ID 123456 可以是您想要使用的任何唯一 ID。

然后,在AS3版本中:

var myvar = 5;
myBridge.send("updateVar", myvar);

在AS2版本中,有以下方法:

function updateVar(var) {
    trace(var); // will output 5
}

参考: http://gskinner.com/blog/archives/2007/07/swfbridge_easie.html

Using the information available on the SWFBridge site, you should do the following:

// in the AS2 SWF:
var myBridge:SWFBridgeAS2 = new SWFBridgeAS2("123456", clientObj);


// in the AS3 SWF:
var myBridge:SWFBridgeAS3 = new SWFBridgeAS3("123456", clientObj);

The ID 123456 can be any unique ID you would like to use.

Then, in the AS3 version:

var myvar = 5;
myBridge.send("updateVar", myvar);

In the AS2 version, have the following method:

function updateVar(var) {
    trace(var); // will output 5
}

Reference: http://gskinner.com/blog/archives/2007/07/swfbridge_easie.html

调妓 2024-10-27 06:17:04

如果您通过 SWFBridge 与 as2 movie 建立了工作连接,只需将这些 flashvars 通过它即可。

If you have working connection with as2 movie via SWFBridge, just pass those flashvars through it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文