2012-05-06 94 views
1

即時通訊使用soundclouds API回顯軌道信息,但我想限制顯示爲每個軌道標題結果的字符數量只有24個字符?我還希望能夠同時設置曲目標題和藝術家要顯示的標題爲大寫文本(首字母大寫其餘字母小寫)如何截斷結果標題?

感謝

<li><a href="' + track.permalink_url +'">Track: ' + track.title + '<BR>Artist: '+ track.user.username + '</a></li>' 

回答

3

試試這個:

function formatter(str) { 
    if(str.length < 24) { 
     return str; 
    } else { 
     return str.charAt(0).toUpperCase() + str.substr(1,23) + '..'; 
    } 
} 

<li><a href="' + track.permalink_url +'">Track: ' + formatter(track.title) + '<BR>Artist: '+ formatter(track.user.username) + '</a></li>' 

DEMO

+0

謝謝,但我不想大寫,我需要大寫,所以它只有第一個字母這是一個資本?如何在標題的末尾添加「...」? –

+0

@DanFarrell現在檢查我的更新和小提琴 – thecodeparadox

0

您可以提前準備的簡稱,先取子,並確保它是小寫:

var shortTitle = track.title.substr(0,24).toLowerCase(); 

然後使用以下爲大寫的第一個字母,並使用小寫字符串的其餘部分補充說...

// ... HTML ouput by JS ... 

document.write(shortTitle.charAt(0).toUpperCase() + shortTitle.slice(1)); 

if (shortTitle.length > 24) 
    document.write('...'); 

// ... HTML output by JS ... 

Here in an example

您可以爲作者重複這些步驟。