我正在尝试创建一个脚本,该脚本遍历带有几个文本句子的段落,并在每个句子的开头和结尾插入一个li标签。这可能吗?
所以,转过这一段
<p>
Give your work the edge with this pencil. Awesome design, and chunky gold finish. Get the look.
</p>
进入这个无序列表
<p>
<ul>
<li>
Give your work the edge with this pencil.
</li>
<li>
Awesome design, and chunky gold finish.
</li>
<li>
Get the look.
</li>
</ul>
</p>
答案 0 :(得分:5)
$('p').each(function() {
var $par = $(this),
theText = $par.text().split('. ');
$par.text('');
$.each(theText, function(i, item) {
if ($.trim(item).length > 0)
$par.append('<li>' + item + '</li>');
});
});
未经测试,但你明白了。拆分,然后运行数组,包装在标签中。
答案 1 :(得分:2)
是的,你可以。
首先,你需要做的就是
Tokenize
每个段落都带有“。”将段落分成不同的句子,然后在其间添加li标签..
要将内容从p更改为ul,您可以使用此链接::
http://api.jquery.com/replaceWith/
用于将单个段标记为句子,您可以使用它:
http://www.tizag.com/javascriptT/javascript-string-split.php
答案 2 :(得分:0)
你可以做这样的事情
$.each($(".my-content").text().split("."), function(index,item){
$(".my-ul").append($("<li/>").text(item));
});