2013-03-28 80 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. 
});