摘要: 很多情況下,我們需要控制長標題的顯示字數。在客戶端用JavaScript控制顯示最大字數后,由于js把任何字符都當作1個長度來處理,由此導致全角和半角字符顯示的實際長度不同。
例如我們設置某個文章列表頁面所有的文章標題最長顯示10個字符。那么如下的題目:
這篇文章是測試標題長度顯示的文章
I love my country.I love all of you.
處理后,將分別顯示為:
這篇文章是測試標題長
I love my (注意最后還有一個空格)
假設我們是按照中文的寬度來確定10個字符這個標準的,那么當標題是英文等半角字符時,顯然太短了。反過來,如果我們按照英文等半角字符來確定顯示字符數量標準,那么如果題目是中文的時候,又很容易出現自動換行等我們不希望出現的結果。
本文嘗試以一種笨拙的辦法處理這個問題。即使用js檢查字符串中的每一個字符,如果發(fā)現有兩個(注意不一定相連)的半角字符,那么就將顯示長度標準加1。
閱讀全文