2017-09-28 6 views
0
$('.entry-content #toggle').click(function() { 

var elem = $('#toggle').text(); 

if (elem == 'Read More') { 

$('.entry #toggle').text('Read Less'); 

} else { 

$('.entry #toggle').text('Read More'); 

} 

}); 

このjQueryは、アーカイブページの各記事のすべてのボタンのボタンテキストを変更します。私はクリックされたボタンを変更するだけです。停止ボタンのテキストをすべてのボタンで変更する

<div id="toggle" class="btn">Read More</div> 

<div class="text" /> 

更新1:2つ以上の段落がある場合にのみボタンを追加します。私はいくつかの方法を使用することができます。

アップデート2:

$('#toggle').click(function() { 

$(this).closest('.post').find('.text').slideToggle(); 

$(this).text(function(i, v) { 

    return v === 'Read More' ? 'Read Less' : 'Read More' 


     }); 
}); 
+0

IDは、私はあなたのサンディエゴのようにjQueryを理解し、コンテキスト – guradio

答えて

1

リファレンスイベント中にあなた自身のボタンを押します。

$('.entry-content #toggle').click(function() { 

var elem = $(this).text(); 

if (elem == 'Read More') { 

$(this).text('Read Less'); 

} else { 

$(this).text('Read More'); 

} 

}); 

Ref。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/this

+0

ウィッシュ上で一意でなければなりません。私は2日間学習しようとしました。どうもありがとうございました。 – Dev

+0

私は助けて、勉強を続けることができてうれしい! JSは一緒に働く素晴らしいパズルです! –

+0

時間がある場合はちょうどもう1つ質問してください。 2つ以上の段落がある場合は、ボタンを追加するだけです。私はいくつかの方法を使用することができます。 – Dev

1

$('#toggle').click(function() { 
 

 
    var elem = $(this).text(); 
 

 
    if (elem == 'Read More') { 
 
     $(this).text('Read Less'); 
 
    } else { 
 
     $(this).text('Read More'); 
 
    } 
 

 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="toggle" class="btn">Read More</div> 
 

 
<div class="text" />

2

簡易コード。

$('#toggle').click(function() { 
 
    $(this).text(function(i, v){ 
 
     return v === 'Read More' ? 'Read Less' : 'Read More' 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="toggle" class="btn">Read More</div> 
 

 
<div class="text" />

+0

.slideUp()でそれを使用できますか? .slideDown(); – Dev

関連する問題