JQuery在脚本周围写入打开和关闭ul标签

时间:2014-01-16 22:16:05

标签: jquery html-lists

我这里有这个代码:

$(".entry-content h2").each(function( index ) {
                        $(this).wrap('<li></li>');
                    });

这包围了每个h2标签周围的开启和关闭li标签......如何在开头添加开头的ul标签,在结尾处添加结束的ul标签?

3 个答案:

答案 0 :(得分:1)

这是一种方法,使用closest()查找父容器,然后使用wrapInner()将容器的内容包装在<ul>中:

$(".entry-content h2").each(function (index) {
    $(this).wrap('<li />');
}).closest('.entry-content').wrapInner('<ul />');

http://jsfiddle.net/nF6ea/


编辑:

另一种方法,使用parent()wrapAll()

$(".entry-content h2").each(function (index) {
    $(this).wrap('<li></li>');
}).parent().wrapAll('<ul></ul>');

http://jsfiddle.net/nF6ea/2/

答案 1 :(得分:0)

您只需将li附加到ul

var ul_element = $("<ul></ul>"); //since I don't know your markup
$(".entry-content h2").each(function( index ) {
    ul_element.append($(this).wrap('<li></li>'));
}).appendTo("whatever");

答案 2 :(得分:0)

尝试在包装li标签之前运行此脚本:

$(".entry-content h2").each(function(index){
    if (index == 0)
    {
    $(this).prepend('<ul>');
    }
    else if(index == $("e.entry-content h2").length - 1)
    {
    $(this).append('</ul>');
    }
})