jQuery相当于php的wordwrap?

时间:2011-12-07 23:12:42

标签: php jquery word-wrap

我正在寻找一种方法来使用jQuery来执行我在php中用wordwrap()做的事情(http://php.net/manual/en/function.wordwrap.php

我会使用php,但我需要在加载dom后动态发生包装 -

我不熟悉jQuery从头开始编写这类函数,我已经运行了一些google和stack搜索,试图找到一个premade插件或者已经完成它的东西。

有什么想法吗?或者也许是一个起点?

谢谢!

编辑: 为了澄清我需要能够在换行符处添加html(例如</p><p>) -

如php:

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

3 个答案:

答案 0 :(得分:8)

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 );
}

答案 1 :(得分:0)

jQuery似乎有一个word wrap plugin,这是一个用于自动换行textarea的跨浏览器解决方案。如果您不打算在textarea上使用此功能,可以尝试设置<p>标记的宽度,以便它包装文本。

这样的东西
<p style="width:50%">some text that is way longer than this</p>

答案 2 :(得分:0)

您可以直接使用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