gpt4 book ai didi

javascript - .each() 方法仅适用于 IE 中的第一个元素

转载 作者:行者123 更新时间:2023-11-30 06:44:54 26 4
gpt4 key购买 nike

我有一个像这样的 jQuery:

$('#corner .photo img').each(function() {
var $img = $(this);
var h = $img.height();
var w = $img.width();
$img.css('margin-top', +h / -2 + "px").css('margin-left',+ w/ -2 + "px");
});

它适用于除 IE 7 和 8 以外的所有浏览器。在这些浏览器中,它仅将新属性应用于 #corner 的第一个元素(即第一个 .photo img)。

如果我删除#corner,它将应用于其中的所有“.photo img”实例。但是,我无法删除 ID #corner,因为 HTML 的某些其他部分正在使用“.photo img”,我不希望将此 jQuery 脚本应用于所有内容。我只希望它应用在#corner 内。

有办法解决吗?

编辑:

糟糕,显然文档中有多个同名的 div,这导致了 IE 中的问题。我将它们更改为类,现在可以使用了。

最佳答案

你可以试试

$('#corner').find('.photo img').each(...

顺便说一句,IE 不喜欢具有相同 ID 的多个项目。如果您以这种方式对多个 id="corner" 项目使用它,它们会将其更改为一个类,您应该没问题。

关于javascript - .each() 方法仅适用于 IE 中的第一个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7785138/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com