次のHTMLコードがあります。これは基本的に、数行で何かをアナウンスし、「[...]」で終了し、下部に「続きを読む」リンクボタンを追加する投稿に関連しています。このボタンをクリックすると、ボタンが消えるにつれて非表示になっている追加のコンテンツがフェードインし、紹介テキストと非表示になっているテキストが表示されたままになります。さて、私はすでにこのためのコードを書いていますが、スニークピークに含めた「[...]」(クリックボタンが発生した投稿から)も削除しようとすると、複雑になります。HTMLは次のとおりです。
<div class="entry">
<p>Welcome. Talk about something briefly and click below for more. [...]</p>
<div class="slide-content">
<p>Hidden content.</p>
</div>
<span id="revealer" class="button"><a href="#">Read more</a></span>
</div>
クラス「entry」と「button」は私のCSSファイルに属し、「slide-content」は私の.jsファイルに属し、fadeIn効果を制御します。ID「revealer」も同じ目的で.jsファイルに属しています。このHTMLは、「box」のクラスを持つdivタグでラップされています。これは、各投稿が従う形式であり、同じHTML要素を使用したまったく同じ形式です。アナウンスを行う必要があるたびに、段落タグの間にコンテンツを配置して公開するだけです。ボタンがクリックされた投稿でのみ「[...]」を削除する方法が見つからないため、ここで問題が発生します。次のことを試してみましたが、複数の投稿ですべての「[...]」が削除されました。
$('.entry p').each(function() {
var textReplace = $(this).text();
$(this).text(textReplace.replace('[...]', ''));
});
概要:
- ユーザーがクリックした投稿([続きを読む]ボタン)からのみ「[...]」テキストを削除する必要があります。アイデアは、これを削除すると同時に、非表示のコンテンツをフェードインさせることです。
- 私は上記を達成することができましたが、「[...]」のすべてのインスタンスに対して。jQueryコードまたはHTMLを変更して、選択を洗練する必要があります。
- オプション3は、この「[...]」を削除することですが、ユーザーにもっと読むコンテンツがあることを知らせるためにそのままにしておきたいので、「続きを読む」ボタンを全部入れたいと思います。一貫性のための投稿。
〜よろしくお願いします!