我正在尝试确定为什么我的某些代码无效,即使它看起来很直接。
如下所示,我确定img标记包含类size-full,然后意图找到最接近的p
元素(它是包含{{1}元素的元素1}} element)b并添加类img
。为什么这不起作用?
CM-blog-image
HTML
if($('.entry-content p img').hasClass('size-full')) {
$(this).closest('p').addClass('CM-blog-image');
}
答案 0 :(得分:2)
您可以这样使用:
$('.entry-content img.size-full').parent().addClass('CM-blog-image');
//or you may use ^^ closest('p')
答案 1 :(得分:2)
您可以使用简单的遍历方法来实现它。无需使用.each()
$('.entry-content p img.size-full') //Find image with the class
.closest('p') //Traverse up to paragraph element
.addClass('CM-blog-image'); //Add the required class
答案 2 :(得分:1)
我假设您要为找到的每个元素添加类。
$('.entry-content p img').each(function(){
if($(this).hasClass('size-full'))
$(this).closest('p').addClass('CM-blog-image');
});
答案 3 :(得分:0)
如果您在entry-content类的下一个附近有p tag和image标签。使用如下。它应该工作。
if($('.entry-content > p > img').hasClass('size-full')) {
$(this).closest('p').addClass('CM-blog-image');
}
答案 4 :(得分:0)
//select img with class size-full
var elm = $('.entry-content p img.size-full');
// add CM-blog-image to closest parent p
elm.closest('p').addClass('CM-blog-image');