我希望在文字大于300个字符后使用更多按钮。
我使用这个jQuery来解决这个问题,但它并没有按我的意愿运行。
var $j = jQuery.noConflict();
$j('.reviewtekst').each(function() {
var $pTag = $j(this).find('p');
if($pTag.text().length > 300){
var shortText = $pTag.text();
shortText = shortText.substring(0, 300);
$pTag.addClass('fullArticle').hide();
$pTag.append('<a class="read-less-link">Lees minder</a>');
$j(this).append('<p class="preview">'+shortText+'</p><div class="curtain-shadow"></div><a class="read-more-link">Read more</a>');
}
});
$j(document).on('click', '.read-more-link', function () {
$j(this).parent().hide().prev().show();
});
$j(document).on('click', '.read-less-link', function () {
$j(this).parent().hide().next().show();
});
请参阅此JSFiddle:https://jsfiddle.net/8cm67cun/1/
如何使这项工作在<a> class
之外显示<p> class
。
答案 0 :(得分:4)
以下是更新版本https://jsfiddle.net/8cm67cun/2/,现在它可以正常使用p
之外的标记$j(document).on('click', '.read-more-link', function () {
$j(this).hide().parent().find('.preview').hide().prev().show();
});
$j(document).on('click', '.read-less-link', function () {
$j(this).parent().hide().next().show();
$j(this).parents('.reviewtekst').find('.read-more-link').show();
});