jQuery控制控件文本的長度

文章作者:Tyan
博客:noahsnail.com ?|? CSDN ?|? 簡書

在Web項目開發(fā)中,有時候會碰到這樣一個問題,控件被文本內(nèi)容撐爆了,但是怎么控制控件文本的的內(nèi)容呢?可能有的人會用Javascript中的substring對控件顯示的文本進(jìn)行控件,但由于字母大小寫,漢字,其它語言等每個字符的大小是不一樣的,這導(dǎo)致了同樣是substring(0, 10),有的內(nèi)容小,有的內(nèi)容大,而想要使用CSS控制控件的寬度時,有時候并不起作用,除非你很精通CSS,否則很難通過CSS控制控件中的文本內(nèi)容,下面的方法可以解決這個問題。

HTML內(nèi)容,h2中的文本通過jQuery控制:

<h2 class="test"></h2>

例如,h2的內(nèi)容為這是一個測試內(nèi)容,更多其它內(nèi)容請查看作者博客!,但控件不夠長,直接放會撐爆控件,想要顯示部分內(nèi)容,剩下的內(nèi)容用...表示。如果h2控件的樣式已由CSS控制,則可以這樣做:

HTML內(nèi)容修改,span控件的CSS樣式?jīng)]有被控制:

<h2 class="test"><span class="test_span"></span></h2>

jQuery寫法為:

var str = '這是一個測試內(nèi)容,更多其它內(nèi)容請查看作者博客!';

var threshold = 100;

for (var i = 1; i < str.length; i++) {
    var subStr = str.substring(0, i);
    $('.test_span').text(subStr);
    if($('.test_span').width() > threshold) {
        $('.test_span').text(subStr + '...');
        break;
    }
}

上面的做法是根據(jù)控件的當(dāng)前寬度來決定顯示的字符數(shù),這樣既不會撐爆控件,又可以最大程度的顯示字符串。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • <a name='html'>HTML</a> Doctype作用?標(biāo)準(zhǔn)模式與兼容模式各有什么區(qū)別? (1)、<...
    clark124閱讀 3,837評論 1 19
  • 通過jQuery,您可以選取(查詢,query)HTML元素,并對它們執(zhí)行“操作”(actions)。 jQuer...
    枇杷樹8824閱讀 724評論 0 3
  • 1-人格特質(zhì),是指一個人獨有的氣質(zhì),獨特的人格特點,也是一個人區(qū)別于其他人的性格上的特征。 人格特質(zhì)的研究成果對于...
    依諾芝閱讀 537評論 0 0
  • 民不畏威,則大威至。無狎其所居,無厭其所生。夫唯無厭,是以不厭。是以圣人自知不自見,自愛不自貴,故去彼取此。 不愚...
    暖陽_1332閱讀 204評論 0 0
  • 在畫這幅思維導(dǎo)圖時,我回憶了課堂上大家的演講,很精彩!我最想的是把大家演講的文本模式畫下來。但想可能內(nèi)容太...
    顏麟鰻閱讀 951評論 0 0

友情鏈接更多精彩內(nèi)容