我已经改编了从另一个项目中提取的 PHP 脚本以在 JavaScript 中使用,该脚本非常适合将文本缩短到设定的限制。如果超过设定的限制,我想用它也将其拆分为多个部分。
当前缩短一次的代码在这里:http: //jsfiddle.net/WilliamIsted/P5jxK/
这是我到目前为止所拥有的:http: //jsfiddle.net/WilliamIsted/UkhXL/(我很确定我做的不对)
我已经陷入循环几次到多次,我不知道如何继续它。
function strTruncate($string, $your_desired_width) {
arr = [];
if (typeof($last_part)) {
$last_part = 0;
}
$parts = $string.split(/([\s\n\r]+)/);
$parts_count = $parts.length;
$length = 0;
$last_part = 0;
for (; $last_part < $parts_count; ++$last_part) {
$length += $parts[$last_part].length;
if ($length > $your_desired_width) {
break;
}
}
$start_part = 0;
return $parts.slice($start_part, $last_part).join('');
}
缩短一次结果:
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer malesuada, est ut interdum ullamcorper, metus lorem interdum ipsum, vitae
新的预期结果:
array[0] = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer malesuada, est ut interdum ullamcorper, metus lorem interdum ipsum, vitae",
array[1] = "vulputate ante quam ut augue. Praesent sit amet varius lorem. Aliquam odio nunc, mattis in mollis vitae, laoreet non velit. Curabitur"
array[2] = "adipiscing, nisl tincidunt consequat ornare, ligula mauris sed."