使用javascript将每个特定长度的文本块包装到自己的div中
我想把一块文本包装成div,这样每个div都有相同数量的字符。其目标是创建可以在类似书籍的页面之间单击的div,即分页。不过,我在用each()语句将文本块的每一段包装成自己的等长div时遇到了麻烦 Jere的代码Hhich适用于一个div,但不适用于多个div: HTML: 你好,我叫乔。我在一所学校工作。 包 javaScript:使用javascript将每个特定长度的文本块包装到自己的div中,javascript,jquery,for-loop,each,word-wrap,Javascript,Jquery,For Loop,Each,Word Wrap,我想把一块文本包装成div,这样每个div都有相同数量的字符。其目标是创建可以在类似书籍的页面之间单击的div,即分页。不过,我在用each()语句将文本块的每一段包装成自己的等长div时遇到了麻烦 Jere的代码Hhich适用于一个div,但不适用于多个div: HTML: 你好,我叫乔。我在一所学校工作。 包 javaScript: $('button').on('click', function(){ var content=$('#content').text(); $('#
$('button').on('click', function(){
var content=$('#content').text();
$('#count').text(content.length);
/* var length20; //20 character long text block
if(content.length>=20);
$.each(length20, function(){
length20.wrap('<div class="new" />');
}
*/
});
$('button')。在('click',function(){
var content=$('#content').text();
$('#count').text(content.length);
/*var length20;//20个字符长的文本块
如果(内容长度>=20);
$.each(长度20,函数(){
长度20.包裹(“”);
}
*/
});
下面是您是否希望直接编辑代码的示例
如果有人能够编辑这把小提琴来修复它的
每一条()
语句,我将非常感激。试试这样的方法:
$('button').on('click', function(){
var content=$('#content').text();
//'5'-length blocks
var parts = content.match(/.{1,5}/g);
$('#count').text(parts.length);
$.each( parts, function( index, part ){
$("body").append ('<div class="New">'+part+'</div>')
});
});
$('button')。在('click',function(){
var content=$('#content').text();
//“5”长砌块
var parts=content.match(/.{1,5}/g);
$('#count').text(parts.length);
$。每个(部分,功能(索引,部分){
$(“正文”)。附加(“”+部分+“”)
});
});
您好,非常感谢,效果很好!因为这会断掉句子,我意识到我应该根据“a”来匹配同样。你能帮助正则表达式根据长度进行匹配并以句号结束吗?句号优先,但仍然需要接近指定的长度。@Timperson按句号/s分割内容,并对每个部分应用match
ing。然后将所有部分与句号组合。顺便说一句,我已经更新了regexp
。使用该选项一个。谢谢,嗯,这是你编辑的最新版本。它似乎仍然按照句号标点优先排列长度。有没有办法扭转这种优先顺序?当我谈论拆分时,你没有正确理解我的评论。不管怎样,看看这个
$('button').on('click', function(){
var content=$('#content').text();
//'5'-length blocks
var parts = content.match(/.{1,5}/g);
$('#count').text(parts.length);
$.each( parts, function( index, part ){
$("body").append ('<div class="New">'+part+'</div>')
});
});