2013-03-28 78 views
2

jQuery的jQuery的切换和更改文本

$('#message div').hide(); 
    $('.readmore').click(function(e){ 
     e.preventDefault(); 
     $('#message div').slideToggle(); 
    }); 

HTML

<div id="message"> 
    <p class="intro">This is an introduction.</p> 
      <div> 
      <p>This is the first paragraph thats orginally hidden</p> 
     <p>This is the second paragraph</p> 
      </div> 
      <a href="#" class="readmore">Read More</a> 
     </div><!--message--> 

在所读更多按钮被点击的内容是slideToggled并显示给大家,并点击它再次隐藏,只显示我的.intro,但是我想在Read More和Show Less之间切换Read More文本。

这怎么可能同时使用的slideToggle

+0

的可能重复[jQuery的 - 的slideToggle()和切换文字](http://stackoverflow.com/questions/2586156/jquery-slidetoggle-and-toggle-text) – lifetimes 2013-03-28 10:11:20

回答

10

检查当前元素的文本其click事件中和使用条件,看看你是否有更改的文本,如果是,再次使用text()更改)。

试试这个:

$('.readmore').click(function(e){ 
    e.preventDefault(); 
    $('#message div').slideToggle(); 
    $(this).text($(this).text() == 'Read More' ? "Show Less" : "Read More"); // using ternary operator. 
});