针对父div的Jquery无效

时间:2014-04-24 08:29:37

标签: jquery html

我有一个按钮,点击后我想淡化另一个名为'hidden'的部分。我不认为我正在以正确的方式确定标记。

这是我的jQuery

$(document).ready(function() {
$('.singleBtn').click(function(){
    $(this).find('.tick').fadeIn(500);
    $(this).parent('.pt-trigger-container').find('.hidden').fadeIn(500);
});
});

我还创建了一个jsfidde

2 个答案:

答案 0 :(得分:2)

您需要使用.parents()而不是.parent()

$(document).ready(function () {
    $('.singleBtn').click(function () {
        $(this).find('.tick').fadeIn(500);
        $(this).parents('.pt-trigger-container').find('.hidden').fadeIn(500);
    });
});

或者您也可以使用.closest()

$(document).ready(function() {
    $('.singleBtn').click(function(){
        $(this).find('.tick').fadeIn(500);
        $(this).closest('.pt-trigger-container').find('.hidden').fadeIn(500);
    });
});

试试这个:

$(document).ready(function() {
    $('.singleBtn').click(function(){
        $(this).find('.tick').fadeIn(500);
        $(this).closest('.pt-trigger-container').next().fadeIn(500);
    });
});

<强> Updated Fiddle

答案 1 :(得分:0)

你的按钮后有一个太多的结束div。 @Felix的更改将有效,我在这里更新了一个jsfiddle:

http://jsfiddle.net/VVNSF/9/

$(document).ready(function() {
    $('.singleBtn').click(function(){
        $(this).find('.tick').fadeIn(500);
        $(this).closest('.pt-trigger-container').find('.hidden').fadeIn(500);
    });
});