我有一个列表标签内的图像列表。我想通过jQuery向list标签添加一个类,如果image(在list标签内)宽度小于667px
jQuery('.basic-gallery li').each(function() {
if(jQuery(this).children().attr('width') < 700) {
jQuery(this).parent().addClass('half');
};
});
<ul class="basic-gallery text-center">
<li><img class="attachment-large" width="667" height="1000" src="/example.jpg" style="max-height: 917px; width: auto; height: auto;"></img></li>
<li><img class="attachment-large" width="667" height="1000" src="/example.jpg" style="max-height: 917px; width: auto; height: auto;"></img></li>
<li><img class="attachment-large" width="667" height="1000" src="/example.jpg" style="max-height: 917px; width: auto; height: auto;"></img></li>
<li><img class="attachment-large" width="667" height="1000" src="/example.jpg" style="max-height: 917px; width: auto; height: auto;"></img></li>
怎么可能这样做?
答案 0 :(得分:0)
将jQuery(this).children().attr('width')
更改为jQuery(this).children().width
答案 1 :(得分:0)
如果您想要img
标签属性的宽度:
$('.basic-gallery li').each(function() {
if($(this).find('img').attr('width') < 667) {
$(this).closest('ul').addClass('half');
};
});
否则,按照上面的@Anri的回答,您可以获得图像的宽度:
$('.basic-gallery li').each(function() {
if($(this).find('img').width() < 667) {
$(this).closest('ul').addClass('half');
};
});