如何實(shí)現(xiàn)文本內(nèi)容折疊并顯示“...查看全部”?

在線體驗(yàn):https://wintc.top/laboratory/#/ellipsis
一、需求描述

二、實(shí)現(xiàn)原理
怎樣判斷文字是否超過指定行數(shù)
如何計(jì)算字符串截取長度
動(dòng)態(tài)響應(yīng),包括響應(yīng)頁面布局變動(dòng)、字符串變化、指定行數(shù)變化等
1、怎樣判斷一段文字是否超過指定行數(shù)?
{{ showContent }} <-- showContent表示字符串截取部分 -->... 查看更多
.ellipsis-containertext-align leftposition relativeline-height 1.5padding 0 !important.textarea-containerposition absoluteleft 0right 0pointer-events noneopacity 0z-index -1textareavertical-align middlepadding 0resize noneoverflow hiddenfont-size inheritline-height inheritoutline noneborder none
2、如何計(jì)算字符串截取長度x——雙邊逼近法(二分思想)
3、監(jiān)聽頁面變動(dòng)
三、代碼實(shí)現(xiàn)
{{ showContent }}{{ ellipsisText }}{{ btnText }}
四、其它
1、支持html串的考慮
2、減少瀏覽器回流的影響

評(píng)論
圖片
表情
