Javascript 如何将wmode=不透明动态添加到已显示的嵌入元素?

Javascript 如何将wmode=不透明动态添加到已显示的嵌入元素?,javascript,flash,google-chrome,google-chrome-extension,embed,Javascript,Flash,Google Chrome,Google Chrome Extension,Embed,如何将wmode=“不透明”动态添加到已显示的嵌入元素中?在不重新加载元素的情况下,嵌入内容不应丢失其状态 仅仅用javascript设置wmode属性是行不通的 删除元素,然后再添加它,会使wmode生效,但flash元素会失去状态,以及其他问题。例如,如果是视频播放器,其位置/播放状态将重置。所以这个解决方案是不好的 在嵌入元素上显示内容的任何其他方式也是可以接受的 (如果有帮助的话,我是通过Chrome扩展中的内容脚本来实现的。) 这不是重复的,因为参数被添加到帧中,而不是直接添加到元素

如何将
wmode=“不透明”
动态添加到已显示的
嵌入元素中?在不重新加载元素的情况下,嵌入内容不应丢失其状态

仅仅用javascript设置
wmode
属性是行不通的

删除元素,然后再添加它,会使
wmode
生效,但flash元素会失去状态,以及其他问题。例如,如果是视频播放器,其位置/播放状态将重置。所以这个解决方案是不好的

在嵌入元素上显示内容的任何其他方式也是可以接受的

(如果有帮助的话,我是通过Chrome扩展中的内容脚本来实现的。)



这不是重复的,因为参数被添加到帧中,而不是直接添加到元素本身。

这是可能的,但有点棘手。如果您不介意使用jQuery,这里有一个由Jose Nobile编写的好方法

如果您想坚持使用js,那么您可以尝试如下所示的方法


希望有帮助

iframe
遮罩了闪光灯结束的部分,允许其他元素在其上显示。至少是铬的


这是YouTube用于播放列表栏(位于查看端口底部)的内容。

我不确定您是否可以。页面加载后立即执行此操作是否有问题?或者这对您的扩展没有帮助?@Brad,只有当用户单击按钮(页面加载后的一段时间)时才会调用扩展,因此我希望避免运行内容脚本和修改用户不想使用扩展的页面(大多数页面)。(如果在用户调用扩展之前的某个时间在页面上创建了动态
embed
s,则必须对其进行跟踪和更改,不确定这是否容易做到。)@Qtax您看到了吗:@GGG,不是
wrap()
删除并读取元素吗?@Qtax不知道,我不使用jQuery。从DOM中删除元素并重新添加它是否会重置插件?这会重新添加元素,因此
embed
s状态丢失。不好/这会导致swf刷新。您能稍微扩展一下您的答案吗?目前,您的问题和答案之间没有明确的关系(
突然弹出)。@RobW,目标是在嵌入式flash对象上显示某些内容(带有问题中的标准)。像这样使用
是一种变通方法,也是我找到的唯一解决方案。