JQuery эквивалент PHPW WordWrap? - PullRequest
       0

JQuery эквивалент PHPW WordWrap?

3 голосов
/ 08 декабря 2011

Я ищу способ использовать jQuery для того, чтобы делать то, что я могу сделать в php с помощью wordwrap () (http://php.net/manual/en/function.wordwrap.php)

Я бы использовал php, но мне нужно, чтобы оборачивание происходило динамически после завершениязагружен -

Я недостаточно знаком с jQuery, чтобы написать такую ​​функцию с нуля, и я запустил несколько поисков в Google и в стеке, пытаясь найти готовый плагин или что-то, что уже сделало.

Есть идеи? Или, возможно, отправная точка?

Спасибо!

РЕДАКТИРОВАТЬ: для пояснения мне нужно иметь возможность добавить HTML в разрывы строк (например, </p><p>)) -

как php:

wordwrap($text, 8, "</p><p>", true);

Ответы [ 3 ]

8 голосов
/ 08 декабря 2011

http://james.padolsey.com/javascript/wordwrap-for-javascript/

function wordwrap( str, width, brk, cut ) {
     brk = brk || '\n';
     width = width || 75;
     cut = cut || false;

     if (!str) { return str; }

     var regex = '.{1,' +width+ '}(\\s|$)' + (cut ? '|.{' +width+ '}|.+$' : '|\\S+?(\\s|$)');

     return str.match( RegExp(regex, 'g') ).join( brk );
}
0 голосов
/ 08 декабря 2011

Вы можете сделать это напрямую с помощью CSS:

.break-word {
  word-wrap: break-word;
}

Перенос слов поддерживается в браузерах IE 5.5+, Firefox 3.5+ и WebKit, таких как Chrome и Safari.

http://webdesignerwall.com/tutorials/word-wrap-force-text-to-wrap

0 голосов
/ 08 декабря 2011

Похоже, есть плагин для переноса слов для jQuery, который является кросс-браузерным решением для переноса слов textarea.Если вы не хотите использовать это на textarea, вы можете попробовать установить ширину тега <p> так, чтобы он обернул текст.

Что-то вроде

<p style="width:50%">some text that is way longer than this</p>
...