作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我希望循环遍历 div,检查每个 div 的特定子 div 中是否有内容,如果有,则向该 div 添加一个类。
$('.img-banner').each(function( index, element ) {
if ( $(element).find('.img-banner-content').length > 0 ) {
$(element).addClass("has-content");
}
});
我在这里缺少一些简单的东西,可以通过摇晃来完成。问题是它向所有 div 添加了“has-content”类。
减少测试用例:JSFiddle
谢谢大家。
最佳答案
您需要实际检查 div 中是否有文本。
$(this).find('.img-banner-content').length
将始终返回 true,因为它实际上并没有检查该 dom 节点是否有任何 innerHTML
,只是 dom-ref 是否存在。
所以替换:
if ( $(this).find('.img-banner-content').length > 0 )
与:
if ( $(element).find('.img-banner-content').text().length > 0 )
放在一起:
$(document).ready(function () {
$('.img-banner').each(function( index, element ) {
if ( $(element).find('.img-banner-content').text().length > 0 ) {
$(element).addClass("has-content");
}
});
});
关于jquery - 循环遍历 Div 并检查子 Div 是否有内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37975396/
我是一名优秀的程序员,十分优秀!