jQuery在切换时更改文本

时间:2013-08-09 10:24:31

标签: jquery

下面我尝试使用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";
    });

3 个答案:

答案 0 :(得分:1)

你可能想要这个:

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

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

答案 1 :(得分:0)

这可能是你最后的陈述:

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

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

答案 2 :(得分:0)

根据slideToggle()是否可见,在mChatBodyFix的完整功能中设置文字:

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

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

});

Here's a fiddle