我使用 soundclouds api 来回显曲目信息,但我想将每个曲目标题结果显示的字符数限制为 24 个字符?我还希望能够将曲目标题和艺术家标题都设置为大写文本(首字母大写其余小写)
谢谢
<li><a href="' + track.permalink_url +'">Track: ' + track.title + '<BR>Artist: '+ track.user.username + '</a></li>'
我使用 soundclouds api 来回显曲目信息,但我想将每个曲目标题结果显示的字符数限制为 24 个字符?我还希望能够将曲目标题和艺术家标题都设置为大写文本(首字母大写其余小写)
谢谢
<li><a href="' + track.permalink_url +'">Track: ' + track.title + '<BR>Artist: '+ track.user.username + '</a></li>'
试试这个:
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>'
对于您问题的第 1 部分,请查看substr
method。它是所有 JavaScriptString
对象的标准方法。
对于第 2 部分,大写,请查看这个问题。
您可以提前准备短标题,首先获取子字符串并确保它是小写的:
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 ...
您可以为作者重复这些步骤。