阅读更多...如何在扩展后使用Read less替换它?

时间:2012-07-20 18:16:57

标签: jquery

你能帮我解决一下这段代码吗?我在这里寻找一个asnwer,但它对我来说有点困难,因为我是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...'));
    }
});

});

在按下“读取更多...”后,我应该放置什么样的代码以及在哪里放置'read more ...'和'read less'(它会扩展 - 动画下来)。除了替换文本脚本工作正常..感谢您给予的任何帮助。我会很感激所有提示。提前谢谢

1 个答案:

答案 0 :(得分: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...');
}

这是demo