我有来自Twitter的以下提要并且即时通讯使所有链接都可点击,然后我希望标签内的链接短至30个字符,如果它超过30个字符然后显示... 30个字符之后
twitter feed
我需要在这里开始从http://javascript.com/java/codes/snippet/search?q=javascript+limit+chars+leading开始学习一些真正的javascript,所以不要删除它。
要
我需要从http://javascript.com/java开始学习一些真正的javascript ...这里有更多文字,所以不要删除它。
只需要知道如何截断标签内部。
被修改
链接可以是整个文本区域中的任何位置。
答案 0 :(得分:1)
要截断字符串,请查看my answer here中字符串的trunc-prototype方法。要获取页面的所有链接,请使用:
var linksHere = document.getElementsByTagName('a');
如果长度超出您的要求,循环链接并缩短每个链接的innerHTML。类似的东西:
var i=-1,len = linksHere.length;
while (++i<len){
linksHere[i].innerHTML = linksHere[i].innerHTML.trunc(30);
}
答案 1 :(得分:0)
这是我使用的一个方便的截断功能。
// Examples
truncate('abcdefghijklmnopqrstuvwxyz'); // returns 'abcdefghijklmnopqrst...'
truncate('hello there', 15); // returns 'hello there'
truncate('hello there', 5, '...read more...'); // returns 'hello...read more...'
// Truncating method
function truncate(string, length, end)
{
if (typeof length == 'undefined')
{
length = 20;
}
if (typeof end == 'undefined')
{
end = '...';
}
if (string == null)
{
return '';
}
return string.substring(0, length-1)+(string.length > length ? end : '');
}