我搜索解决方案,找到不包含html标签的文本中的所有链接。
我有一个解决方案的开始,像这样:
jQuery("a:not(a:has(img), a:has(span), ...)").addClass('myclass');
在此处找到:jQuery selector for link without an image inside
但我希望这样的事情:
jQuery("a:not(a:has(all-html-element))").addClass('myclass');
我不知道是否发现我的链接是否有孩子这是一个更好的解决方案,如下所示:
if(jQuery("a").children().size() == 0)
{
//do some stuff
}
您怎么看?
答案 0 :(得分:3)
$("a").filter(function(){
return $(this).children().length == 0;
})
答案 1 :(得分:2)
答案 2 :(得分:0)
试试这个..
$("a").filter(function() {
return $(this).text() == $(this).html();
}).addClass('myclass');
text()将删除所有html标签,如果这与html()的返回相同,则只包含不包含html标签的元素。
答案 3 :(得分:0)
检查当前的a元素是否包含任何子元素:
$("a").filter(function(){
return this.children.length === 0; // check if the element has any DOM elements
}).addClass("myclass");