Firefox没有获得.each()或所有元素

时间:2011-01-31 13:27:26

标签: jquery firefox

我有一些代码:

$('.audio_player embed').each(function() {
   $(this).attr('wmode','transparent').wrap('<div></div>');
   console.log($(this));
});

这段代码的作用是找到所有嵌入div中的一个.audio_player类,然后对于每一个,它会将wmode更改为透明并将其包装在div中。

此代码在Chrome中完美运行,所有嵌入都会改变wmode。但是在Firefox中,它只获得第一个而不是全部。

我添加了console.log以查看它们是否被拾取。在Chrome中,它可以获得多个嵌入,但不会在Firefox中使用。

任何帮助都会非常感激。感谢。

2 个答案:

答案 0 :(得分:0)

试试这个,它更加逐字逐句并且使用每一个,只做了一些小修改:

$(document).ready(function () {
    $("div.audio_player").each(function() {
        $("embed", this).attr("wmode","transparent").wrap("<div />");
    });
});

添加就绪

答案 1 :(得分:0)

这是我的错 - 它不是特定于浏览器的。我注意到当我加载第二页时 - 它没有找到嵌入,因此它不会添加wmode。但是当我加载第三页时,第二页上的嵌入工作正常,而页面却没有。我会进一步研究这个问题。我认为函数之前的延迟可能是有序的。