jQuery中与php的wordwrap函数相对应的是什么?

4
我希望能够使用jQuery来实现在php中使用wordwrap()函数的功能(http://php.net/manual/en/function.wordwrap.php)。
我想使用php,但我需要在dom加载后动态地进行换行处理。
我对jQuery不太熟悉,无法从头编写这种函数,并且我已经运行了一些谷歌和堆栈搜索,试图找到一个预制插件或已经完成它的东西。
有什么想法吗?或者一个起点?
谢谢!
编辑: 为了澄清,我需要能够在换行符(例如</p><p>)处添加html。
作为php:
wordwrap($text, 8, "</p><p>", true);
3个回答

10

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

我认为这正是我正在寻找的--您有任何想法如何在jQuery中使用它吗? - Thomas
简单来说,您可以在 jQuery 中使用本地的 JavaScript 脚本,但如果您想将其用于 jQuery 库/模块中,只需将此函数作为对象(类)的一部分即可。 - n1_
哇!你真是太棒了。 - Shehroz Ahmed

0

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

类似这样的:

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

0

1
虽然我很想使用CSS来实现它,但我需要将HTML添加到DOM中。例如,使用PHP,我会编写wordwrap($str, 8, "<br>")。所以CSS解决方案无法帮助我,谢谢! - Thomas

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接