有没有办法查询嵌入式flash元素以确定可以通过JavaScript在其上执行的可用方法?
编辑: 似乎在IE中它就像
一样简单for ( i in flashNode ) {
alert(i);
}
经过多次点击后,他们将成为最后列举的成员之一。
但仍然无法在Firefox中确定这一点。
答案 0 :(得分:3)
虽然可以通过枚举IE中的<object>
DOM节点来获取回调,但它们与DOM节点的所有其他属性混合在一起,并且无法在不保留列表的情况下对它们进行progamatically区分。已知的属性,以比较它们,然后取两组的差异。
这种方法值得怀疑,因为属性可以任意添加到任何DOM节点。更糟糕的是,它只适用于IE。 Firefox(可能还有其他人)不会将回调作为<object>
DOM节点的属性返回。
答案 1 :(得分:1)
我相信它在FF和其他浏览器中的工作方式相同,但您可能需要以不同于IE的方式获取对swf元素的引用。
IE将使用一个对象标签,通常带有id,而ff / safari / etc将使用embed标签,因为你不应该在两个元素上使用相同的id,所以人们通常使用name属性来代替在embed标签上的id属性。
如果你使用类似SWFObject的东西来嵌入你的swfs,那么你应该只得到一个或另一个(对象或嵌入),无论你写的是什么都会设置id属性与你指定的任何东西,所以你可以迭代在对象上。