jQuery如果div有锚子,那么

时间:2012-03-02 18:22:36

标签: jquery html if-statement anchor

在一个简单的问题上遇到麻烦。我的早茶不够结实。

如果div有一个孩子,那就是一个锚点。不想在.box

中添加其他类

类似的东西:

$('.box').click(function(){
    if ($(this).children('a')) {
        //some thing
    } else {
        //some thing else
    }
});

<div class="box"><a href="#"><img src="#" /></a></div>
<div class="box"><img src="#" /></div>
<div class="box"><img src="#" /></div>

3 个答案:

答案 0 :(得分:8)

检查length属性:

$('.box').click(function(){
    if ($(this).children('a').length) {
        //some thing
    } else {
        //some thing else
    }
});

由于children方法(与大多数jQuery方法一样)返回jQuery实例,因此它总是会计算为true(所以你总是会在if分支中结束) 。 length属性会返回一个数字,如果它是false,则会计算为0

答案 1 :(得分:0)

您可以使用.find()在选择器中搜索其他选择器:http://jsfiddle.net/Nf3QH/希望有所帮助!

答案 2 :(得分:0)

现在不需要jQuery你只需要添加一些vanilla JavaScript,注意代码很短。

log P(y_1 | y_0 X_0 X_1 theta)
pm.gp