ссылка на ограничение отображения javascript из текстовой области - PullRequest
1 голос
/ 11 октября 2009

У меня есть следующий фид из твиттера, и я делаю все ссылки кликабельными, а затем я хочу, чтобы ссылки внутри тега были короткими до 30 символов, если их больше 30 символов, то отображаются ... после 30 символов

твиттер

Мне нужно начать изучать настоящий javascript из http://javascript.com/java/codes/snippet/search?q=javascript+limit+chars+leading еще текста, так что не удаляйте это.

К

Мне нужно начать изучать настоящий javascript из http://javascript.com/java... еще текста, так что не удаляйте это.

просто нужно знать, как я могу обрезать внутреннюю часть тега.

Отредактировано

ссылка может быть где угодно во всей текстовой области.

Ответы [ 2 ]

1 голос
/ 11 октября 2009

Чтобы обрезать строку, посмотрите на метод 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);
}
0 голосов
/ 11 октября 2009

Вот удобная функция усечения, которую я использую.

// 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 : '');
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...