0
4

3 回答 3

1

您应该将 jQuery 包装在 .ready 函数中,如下所示:

$(document).ready(function() {
    $(".show-comments").click(function(){
        $(".comments-container").slideDown("slow");
    });
});

这应该有效。

要回答您的其余问题:

您可以将相同的元素用作两个操作的链接。

$(document).ready(function() {
    $(".show-comments").on('click', function(){
        $(this).removeClass().html('Hide Comments').addClass('hide-comments');
        $(".comments-container").slideDown("slow");
    });
    $(".hide-comments").on('click', function(){
        $(this).removeClass().html('Show Comments').addClass('show-comments');
        $(".comments-container").slideUp("slow");
    });
});

注意:我使用.on()方法将事件处理程序附加到 jQuery 对象中的元素。

于 2013-04-16T08:10:48.867 回答
1

我知道这是一篇旧帖子,但我只是发现了一些非常简单的事情。

<a class='show-comments' onClick="$(this).hide()">Show Comments</a>

希望它能帮助像我这样试图找到它的人。

于 2018-07-18T12:16:50.970 回答
0

像这样的东西:

$(document).ready(function() {
    $(".show-comments").click(function(){
        var oThisLink = jQuery(this);
        oThisLink.toggleClass('someclassname');
        if( oThisLink.hasClass('someclassname') ) {
            oThisLink.text('Hide Comments');
            jQuery(".comments-container").slideDown("slow");
        }
        else {
            oThisLink.text('Show Comments');
            jQuery(".comments-container").slideUp("slow");
        }
    });
});
于 2013-04-16T08:15:08.517 回答