我想在DOM准备好之前加载一些jQuery代码。我想在DOM加载时使闪存文件透明。我本来打算使用这样的东西,但是Flash是在DOM加载之前初始化的。
jQuery(document).ready(function(){
jQuery('object:not(:has(wmode))').each(function(){
jQuery(this).attr('wmode', 'transparent');
jQuery(this).prepend('<param name="wmode" value="transparent">');
jQuery(this).children('embed').attr('wmode', 'transparent');
});
});对怎么做有什么想法吗?
编辑
嘿,伙计们,谢谢你的帮助,基本上,flash内容来自我们的广告管理器,它很愚蠢,不允许直接编辑HTML,因为要将所需的wmode添加到特定的标签中.
所以Javascript是我唯一的选择。
发布于 2010-11-08 14:34:10
ready()是您安全访问任意DOM元素的最早点。
您可以在声明script标记之后直接放置一个object块:这应该有效,您可以访问object元素。
但是,我认为即使这样也不会对您有所帮助:据我所知,Flash不会接受JavaScript端对wmode参数的更改。
您必须将wmode.transparent放入HTML中,或者在加载DOM时动态地创建Flash电影。
发布于 2010-11-08 14:45:53
在加载dom之前使用javascript将产生不可预测的结果。根据您的意愿修改html代码,但不要使用javascript。
发布于 2010-11-08 14:49:08
最安全的方法是在dom准备事件上构造对象或嵌入元素:
<div id="flash"></div>
$(document).ready(function(){
var htm= '<object ...><param name="some" value="val" ... /></object>';
$('#flash').html(htm);
});https://stackoverflow.com/questions/4124765
复制相似问题