<p style="width:60px"> I am some random text. I am Some text.blabla</p>
上面渲染的 HTML 结果可能是,
I am some ra
ndom text. I
am Some text
.blabla
我想将上面的段落逐行分成单独的段落。那么预期的结果是怎样的,
<p style="width:60px">I am some ra</p>
<p style="width:60px">ndom text. I</p>
<p style="width:60px">am Some text</p>
<p style="width:60px">.blabla</p>
可以用Javascript实现吗?
附:为什么我必须分割它?因为我想为长 HTML 建立自己的分页系统,其中高度范围内的所有段落和分割段落将被放入相同的<div class="page"></div>
。最后,整个 HTML 将被组织为
<div id="page1" class="page">
<p> complete content </p>
<p> upper part of XXX </p>
</div>
<div id="page2" class="page">
<p> bottom part of XXX </p>
<p>...</p><p>...</p>
</div>
好吧,假设您的文本位于<p id='wholeText'>
:
var element = document.getElementById("wholeText");
var wholeText = element.innerHTML;
var splitText = wholeText.split("\r\n");
var newHtml = null;
for(var i = 0; i < splitText.length; i++)
{
newHtml += "<p class='each-line'>"+splitText[i]+'</p>';
}
然后你可以使用newHtml
写入 DOM 元素。例如,如果您想将其添加到同一个<p>
你从中得到文本,你会:
element.innerHTML = newHtml; // remember element refers to the <p> with the ID of wholeText
还将上述所有代码放入一个函数中,并在窗口完全加载后调用该函数。
window.addEventListener("load", function(){
// put the code here
}, false);
如果您的行不包含break characters
,那么请参考这个插件:http://jsfiddle.net/nathan/qkmse/ http://jsfiddle.net/nathan/qkmse/
上面的链接是在这个SO的问题中建议的:
用 jQuery 检测换行符? https://stackoverflow.com/questions/4671713/detecting-line-breaks-with-jquery
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)