更改触发器文本

时间:2013-01-16 04:21:05

标签: jquery toggle

$("a.question").click(function () {
    var $this = $(this);
    $this.next(".answer").slideToggle('fast', function () {
        $this.text($(this).is(':visible') ? "Show Question" : "Hide Question");
    });
});

小提琴:http://jsfiddle.net/9tSww/1/

..现在这几乎可以正常工作,除非你第一次点击触发器,它现在不会更新标签,它只能在第二次点击它时起作用。

3 个答案:

答案 0 :(得分:2)

$(this).is(':visible')

!$(this).is(':visible')

答案 1 :(得分:2)

请改用以下内容。

var $this = $(this);
$this.next(".answer").slideToggle('fast', function () {
  $this.text(function(i, text) {
    return text == 'Show Question' ? 'Hide Question' : 'Show Question';
  });
});

答案 2 :(得分:1)

或将:visible更改为:hidden

http://jsfiddle.net/9tSww/2/