我已经编写了一些jQuery,它在父母拥有img
类的.four-three-img
元素上动态设置4:3宽高比高度。它按预期工作,除非单个页面包含宽度不同的.four-three-img
元素。
例如,如果有两个section
包含.four-three-img img
元素,则会确定第一个img
中第一个section
的高度并将其应用于第一个和第二个img
元素中剩余的section
个,可能更小或更大。我已经尝试将脚本放在for循环中,但它没有任何区别。
这是脚本:
$(window).on('load resize', function() {
var fourThreeHeight = $('.four-three-img').width() * 0.75;
$('.four-three-img img').each(function() {
$(this).height(fourThreeHeight);
});
});
答案 0 :(得分:1)
尝试将fourThreeHeight
- 变量放在each
- 函数中,并将$('.four-three-img')
更改为$(this)
:
$(window).on('load resize', function() {
$('.four-three-img img').each(function() {
var fourThreeHeight = $(this).width() * 0.75;
$(this).height(fourThreeHeight);
});
});
将它放在each
- 函数之外将导致只存储第一个元素的宽度,而不是每个元素。