我有一个JS Fiddle,我的问题是第一次单击后一切正常,但是如果再次单击H3,则不会切换新类。

我在这里先向您的帮助表示感谢

$('.recommendation-block > h3').addClass('newclass');
$('.recommended-product').addClass('hide');
$(document).ready(function () {
    $('.recommendation-block > h3').click(function () {
        $(this).next('.recommended-product').toggleClass('active');
        if ($('.recommended-product').hasClass('active')) {
            $(this).closest('.recommendation-block > h3').toggleClass('newclass1');
        }
    });
});

最佳答案

我认为您需要使用带切换参数的toggleClass版本,还需要定位当前上下文中的recommended-product

$(document).ready(function () {
    $('.recommendation-block > h3').click(function () {
        var $prod = $(this).next('.recommended-product').toggleClass('active');
        $(this).closest('.recommendation-block > h3').toggleClass('newclass1', $prod.hasClass('active'));
    });
});


演示:Fiddle

在您的情况下,仅在交替单击中执行if块,因为hasClass仅在将active类添加到recommended-product时才返回true。

关于jquery - jQuery点击功能-,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24036495/

10-10 19:57