2

以下の jQuery js は、配置したリンクの前にコンテンツを非表示にします。クリックすると表示されます。テキストを「Show Crisis」から「Hide Crisis」に変更し、関数を .show() から .hide() に変更したいと考えています。どうすればこれを進めることができるかわからないので、いくつかの助けが素晴らしいでしょう!

JS:

$(".crisisButtons").hide().before("<a href='#' class='showHide'>Show Crisis</a>");
      $(".showHide").click(function(){
            var link = $(this);
            link.next().show("slow");
        });
4

3 に答える 3

3

.text()メソッドのコールバック関数を使用できます。

$(".showHide").click(function(){
    $(this).text(function(_, text){
         return text === 'Show Crisis' ? 'Hide Crisis' : 'Show Crisis';
    }).next().toggle("slow");
});

http://jsfiddle.net/kNBwD/

于 2013-04-04T04:40:49.093 に答える
0

私はこの種のことをします:

button.click(function () {
    link.toggle('fast', function () {
        button.text(link.css('display') === 'none' ? 'Show Crisis' : 'Hide Crisis'));
    });
});
于 2013-04-04T04:45:14.613 に答える
0
$("#youratag_id").text("Show crisis");

それと同じくらい単純なはずです

またはトグルを使用:

$(function() {
        $(".showHide").toggle(function (){
            $(this).text("Show crisis");
            .stop();
        }, function(){
            $(this).text("Hide crisis");
            .stop();
        });
    });
于 2013-04-04T04:38:33.160 に答える