javascript - Polymer JS Polyfill 和 flash 兼容性

标签 javascript flash polymer wistia

我正在尝试将一些新的 polymer 自定义元素集成到我正在开发的项目中,其中一个要求是该应用程序可以将视频上传到第三方服务(Wistia)。该第三方服务提供了一个使用 flash 的上传小部件,但 polymer 提供的 platformJS polyfill 正在影响创建的 flash 对象并破坏该小部件。我不是 Flash 开发人员,也不了解浏览器中的 Flash 是如何工作的,但如果有人知道另一种实例化 Flash 对象的方法,以便它可以与 platformjs polyfill 一起使用,或者有选择地排除我真的很感激你的见解。

Flash 对象初始化代码(来自 http://static.wistia.com/javascripts/upload_widget.js)

containerElement = 文档。

getElementById(this.settings.flash_container_id);
containerElement.innerHTML =
['<object id="', this.movieName, '" type="application/x-shockwave-flash" data="', this.settings.flash_url, '" width="', this.settings.flash_width, '" height="', this.settings.flash_height, '" style="-moz-user-focus: ignore;">',
            '<param name="movie" value="', this.settings.flash_url, '" />',
            '<param name="bgcolor" value="', this.settings.flash_color, '" />',
            '<param name="quality" value="high" />',
            '<param name="menu" value="false" />',
            '<param name="wmode" value="', this.settings.flash_wmode ,'" />',
            '<param name="allowScriptAccess" value="always" />',
            '<param name="flashvars" value="' + this.getFlashVars() + '" />',
            '</object>'].join("");

现在的问题是,当像这样实例化对象而没有使用 platformjs polyfill 时,可以像这样调用 flash 函数

var movieElement = document.getElementById(FLASH_OBJECT_ELEMENT_ID);
movieElement[functionName]()

对此事的任何见解将不胜感激, 谢谢

最佳答案

正如您在上面的评论中注意到的,当本地未提供影子 dom 时,您通过查询选择器获得的元素为 wrapped为了对shadow dom进行polyfill封装。这些包装的元素不会暴露包装对象上的所有内容。为了在具有和不具有 native Shadow dom 实现的浏览器中工作,请尝试以下操作:

var movieElement = unwrap(document.getElementById(FLASH_OBJECT_ELEMENT_ID));
movieElement[functionName]();

关于javascript - Polymer JS Polyfill 和 flash 兼容性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24830022/

相关文章:

java - Spring MVC 和表单绑定(bind) : how to remove an item from a List?

javascript - 如何获取 Elasticsearch 中嵌套对象的数组计数

actionscript-3 - AS3中复杂的无间隙声音循环

delphi - 显示Flash Player代替URL

javascript - 无法在 Javascript 中连接 String+Variable+String

javascript - 谷歌闭包编译器+ ant自动链接源映射自动到源

python - 将 Django xml 保存在文件中?

html - polymer 纸工具栏忽略正文边距

javascript - 正则表达式条件不适用于 polymer 纸张输入,如何在纸张输入上仅允许小数?

javascript - 仅在需要时实例化 polymer 元素?