我有一个脚本,它从一个长度可变的用户获取一个输入字符串,通常是400-3000个字母。 我的脚本对字符串进行了一些修改,然后将其打印到屏幕上。 使用文档写入,一切都出现在一行上。但是,我希望每个输出行有~100个字母,因此用户不必向右滚动~3000个字母来查看整个文本。
我能想象的唯一方法就是for循环,但也许有人知道更好的解决方案?
修改
这是我目前用于实现此目的的for循环
document.write("<p>",">Position: ", (lower+1) + "-" + (lower +print_screen.length), "<br/>");
// print only 70 chars per line
for(i = 0; i < print_screen.length; i += 69){
document.write(print_screen.substring(i, i+69), "<br/>");
};
document.write("</p>");
答案 0 :(得分:3)
将此CSS用于容器:
.longtext {
white-space: -moz-pre-wrap !important; /* Mozilla, since 1999 */
white-space: -pre-wrap; /* Opera 4-6 */
white-space: -o-pre-wrap; /* Opera 7 */
white-space: pre-wrap; /* css-3 */
word-wrap: break-word; /* Internet Explorer 5.5+ */
word-break: break-all;
white-space: normal;
}
答案 1 :(得分:2)
您可以使用replace
和正则表达式在字符串中添加中断。这会在每100个字符处添加一个中断:
document.write(theText.replace(/(.{100})/g, '$1<br/>'));