让ExternalInterface与所有浏览器一起工作的优雅方式

发布于 2024-11-01 06:30:48 字数 506 浏览 4 评论 0原文

我想使用 ExternalInterface 类从 javascript 调用 Flash 影片内的函数。问题是,为了让它在 Firefox 中工作,我需要使用 embed 元素,而其余的我必须获取 object 元素。为了解决这个问题,我为这两个元素提供了不同的 id,并根据用户代理选择其中之一:

 function getMovie(movieName) {

    alert(navigator.userAgent);
     if (navigator.userAgent.indexOf("Firefox") != -1) {
         return document["flash_embed"];
     } else {
         return document["flash_object"];
     }
 }

这可行,但不是很优雅,并且可能无法与其他浏览器一起使用...你知道更好的吗方法来做到这一点?

I want to call a function inside a Flash movie from javascript, using the ExternalInterface class. The problem is that to get it to work with Firefox I need to use the embed element and with the rest I have to get the object element. To solve it, I gave different ids to that two elements and depending on the user agent I select one or the other:

 function getMovie(movieName) {

    alert(navigator.userAgent);
     if (navigator.userAgent.indexOf("Firefox") != -1) {
         return document["flash_embed"];
     } else {
         return document["flash_object"];
     }
 }

This works, but it is not very elegant and it may not work with other browsers... Do you know a better way to do this?

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

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

发布评论

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

评论(1

夏日浅笑〃 2024-11-08 06:30:48

使用 swfobject 嵌入您的 Flash 影片,然后使用它来检索正确的 ID。

Use swfobject to embed your flash movie, and then use it to retrieve the correct id.

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