我希望在文本大于300个字符后使用read more按钮.
我使用这个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();
});
Run Code Online (Sandbox Code Playgroud)
看到这个JSFiddle:https://jsfiddle.net/8cm67cun/1/
我怎样才能做到这一点,展示<a> class外面的<p> class.
这是更新版本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();
});
Run Code Online (Sandbox Code Playgroud)