0

下面我尝试使用 jQuery 打开和关闭窗格,但我也想使用 jQuery 来切换文本。有人可以帮助我重命名.chatstatus为其中一个openclose切换时吗?

    $('.chatstatus').click(function(){
        $('.mChatBodyFix').slideToggle(500);
        $.cookie('chatPane', $.cookie('chatPane')=='open'?"closed":"open", {expires:1});

        var chatstatustext = $('.chatstatus').text();
        $('.chatstatus').html() == chatstatustext?"close":"open";
    });
4

3 回答 3

1

你可能想要这个:

$('.chatstatus').html( chatstatustext == "open" ? "close" : "open" )

html()设置元素的文本。因此,您可以在此处使用条件将其设置为“打开”或“关闭”。

于 2013-08-09T10:31:24.207 回答
0

这可能是你的最后一句话:

$('.chatstatus').html() == chatstatustext?"close":"open";

您正在测试的chatstatustext是真还是假,但它是一个字符串值。如果chatstatustext包含除空字符串之外的任何字符串,它将始终保持.chatstatus等于“关闭”。

于 2013-08-09T10:28:40.363 回答
0

slideToggle()根据是否mChatBodyFix可见,在 的完整函数中设置文本:

$('.chatstatus').click(function() {

    var $button = $(this);
    $('.mChatBodyFix').stop().slideToggle(500, function() {
        $button.text( $(this).is(':visible') ? 'close' : 'open' );
    });

});

这是一个小提琴

于 2013-08-09T10:29:37.087 回答