Самый простой способ обрезать строку с помощью jQuery - PullRequest
0 голосов
/ 28 февраля 2012

У меня есть страница, на которой в настоящее время используется плагин jQuery для усечения текстовой строки на основе предоставленной ширины.Хотя строка усекается и заканчивается на «...», полная строка помещается внутри TITLE элемента.

Обычно это прекрасно работает, однако я заметил случай, когда на странице слишком много строк, закрытьна 100, и моя страница начинает падать, жалуясь, что скрипт перестал отвечать.

Есть ли более простой способ усечения?Я в порядке, использую приблизительную ширину, возможно, переключаясь на количество символов?

Мне бы понравилось, если бы это можно было сделать всего несколькими строками кода.

Может ли что-то подобное бытьсделано?

1 Ответ

1 голос
/ 28 февраля 2012

Они называются многоточием.Я бы посоветовал вам перейти на CSS вместо использования JavaScript.

Примерно так.

.ellipsis {
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    -o-text-overflow:ellipsis;
    -moz-binding:url('ellipsis.xml');
}

Где ellipsis.xml содержит

<?xml version="1.0"?>
<bindings 
  xmlns="http://www.mozilla.org/xbl"
  xmlns:xbl="http://www.mozilla.org/xbl"
  xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
     <binding id="ellipsis">
        <content>
           <xul:window>
              <xul:description crop="end" xbl:inherits="value=xbl:text"><children/></xul:description>
           </xul:window>
        </content>
     </binding>
</bindings>

Также для таких браузеров, какFF (от 4 до 7), которые не поддерживают многоточие, есть обходные пути для достижения этой цели.

Вы можете посмотреть эту ссылку для обходных путей FF переполнение текста: многоточие в Firefox 4?(и FF5)

...