我可以在文本中显示x个字符,当我点击href时,我会显示文本的其余部分,但在我的文本中,我有一个或多个换行符<br>
,但此换行符未显示。有没有办法解决这个问题 - 谢谢
HTML:
<div class="minimize">
sfjsdlhfljfksljlkglsdøfjklfdhklsfjsdgfdjklfjsklfjghfklsdfjsdlghf
sdfsdglkjfdghslkdfjsgjlskdøfjgslfkjgfsdklgjsfdgjsdg
sdgklsgjlsdøgjsklfdgjlsdjgfdjkgsdlgjdgjklsdjlgksjflkgjfdlkgjsldg
sdgklfdjgkfdhgklsdjgfdjhklf
<br>
sadsaøglsfdkjgsdøfsdjgdføgksøgfdgsd
gfdgklfdjklgfdjgfdøklgjhdlkjøhfdklfdøkjhdklhjfdøhjdfklhfd
fdhdkhlfdgjlhfdjfdklhkfdhfløgfdghordlhgrdlhdlregdjkldgj
fdgfdjlgkjfdghfdjhgirdlkfghrodøhgjghfdjkklghrsdgdl
</div>
jQuery的:
var minimized_elements = $('.minimize');
minimized_elements.each(function(){
var t = $(this).text();
if(t.length < 100) return;
$(this).html(
t.slice(0,100)+'<span>... </span><a href="#" class="more">More</a>'+
'<span style="display:none;">'+ t.slice(100,t.length)+' <a href="#" class="less">Less</a></span>'
);
});
$('a.more', minimized_elements).click(function(event){
event.preventDefault();
$(this).hide().prev().hide();
$(this).next().show();
});
$('a.less', minimized_elements).click(function(event){
event.preventDefault();
$(this).parent().hide().prev().show().prev().show();
});
答案 0 :(得分:3)
你可以使用jquery扩展器这个插件隐藏(折叠)元素内容的一部分并添加“阅读更多”链接,以便用户可以查看文本https://kswedberg.github.io/jquery-expander/