1

このコードを教えてください。私はここで回答を探していましたが、jquery プログラミングの初心者であるため、少し難しいです。ここで私がやろうとしているのは、たとえば ('read less...') で押された後に ('read more...') テキストを置換することです。私はそれをやろうとしましたが、何度も失敗します。これに関する他の投稿をここで見つけましたが、作成したスクリプトを使用して、これをさらにトレーニングしたいと思います。何かご意見は?コードはここにあります。

$(document).ready(function(){
var $posts = $('#items > div');
var maxHeight = 95;

$('a', $posts).live('click', function(){
    var $par = $(this).prev('p');

    var oH = parseInt($par.attr('class'));

    if($par.height() == oH){
        $par.animate({
            'height': maxHeight
        }, 'medium');
    }else{
        $par.animate({
            'height': oH
        }, 'medium');
    }
});

$posts.each(function(){
    if($('p', this).height() > maxHeight){

        $('p', this)
            .attr('class', $('p', this).height())
            .css('height', maxHeight+'px');
        $(this).append($('<a>').text('read more...'));
    }
});

});

「もっと読む...」が押された後、「もっと読む...」を「もっと少なく読む」に置き換えるには、どのようなコードとどこに配置すればよいですか(展開 - アニメーションダウン)。テキストを置き換えることは別として、スクリプトは正常に機能しています..ご協力いただきありがとうございます。すべてのヒントに感謝します。前もって感謝します

4

1 に答える 1

0

呼び出してリンクテキストを変更できます$(this).text('....');

if($par.height() == oH){
    $par.animate({
        'height': maxHeight
    }, 'medium');
    $(this).text('read more...');
}else{
    $par.animate({
        'height': oH
    }, 'medium');
    $(this).text('read less...');
}

ここにデモがあります

于 2012-07-20T18:31:11.813 に答える