如果div有图像将img放在其他div中

时间:2011-12-21 01:25:10

标签: javascript jquery image if-statement

我知道它听起来有点疯狂,但是我做了一些相当复杂的事情(对我来说很复杂,不是为了更好的JS编码器)文章中的WordPress主题和文字扩展了悬停,发布的图像显示在不同的div,和其他东西。无论如何,我需要一个能够检查每个帖子(文章)的函数,如果帖子中有img,那么将img放在其他div中,如果不是,请按原样使用它。我从不擅长if else陈述,我尝试了一些东西,但没有帮助。

var picture = $('.post p').find('img');    
$(this).find('.postimage').empty().append(picture);

这可以作为测试,但当然它会将第一篇文章中的图像附加到所有“postimage”div,并且它不是一个有用的解决方案。

2 个答案:

答案 0 :(得分:2)

使用.each()方法分别对每个匹配的项目进行操作。

e.g。

var picture = $('.post p img').each(function(index, element) {
    // the following line will need to change depending on how you need to find the correct .postimage div from the .post div
    $(this).closest('.post').find('.postimage').empty().append(element); 
});

答案 1 :(得分:0)

无需条件逻辑。

$('.post p img')是“在课后div中的p里面的所有图像”。换句话说,就是你要移动的图像集。

如果有多个'postimage'div,那么你将需要更清楚你的逻辑来确定哪个图像在哪个div中。