Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery-包装问题-要声明元素吗_Jquery - Fatal编程技术网

jQuery-包装问题-要声明元素吗

jQuery-包装问题-要声明元素吗,jquery,Jquery,嗨,我有一个wrap()可以正常工作,但问题是,我需要能够告诉它从哪里开始wrap(通过元素ID…#start)和从哪里结束wrap(同样,通过元素ID…#end)。这可能吗?我把问题的措辞写得好吗?谢谢 $("#start").nextUntil("#end").add("#end") 或者,如果您希望它是独占的,请执行以下操作: $("#start").nextUntil("#end").not('#start') 是的,你在这个问题上做得很好 有关nextUntil方法的详细信息:

嗨,我有一个wrap()可以正常工作,但问题是,我需要能够告诉它从哪里开始wrap(通过元素ID…#start)和从哪里结束wrap(同样,通过元素ID…#end)。这可能吗?我把问题的措辞写得好吗?谢谢

$("#start").nextUntil("#end").add("#end")
或者,如果您希望它是独占的,请执行以下操作:

$("#start").nextUntil("#end").not('#start')
是的,你在这个问题上做得很好


有关nextUntil方法的详细信息:

或者,如果您希望它是独占的,请执行以下操作:

$("#start").nextUntil("#end").not('#start')
是的,你在这个问题上做得很好



关于nextUntil方法的更多信息:

Ivan Castellanos答案已接近,但如果您希望它也包含start元素,则必须使用以下选项:

$("#start").nextUntil("#end").add('#start').add("#end")
就排他性而言,这将起作用:

$("#start").nextUntil("#end")

Ivan Castellanos的答案很接近,但如果您希望它也包含start元素,则必须使用以下内容:

$("#start").nextUntil("#end").add('#start').add("#end")
就排他性而言,这将起作用:

$("#start").nextUntil("#end")

如果您真的想在包含div中从一个同级封装到下一个同级,可以这样做:

function wrap(begin, end) {
    var start = $(begin); 
    var div = $("<div>").addClass("wrap").insertBefore(start);
    start.nextUntil(end).add(start).add(end).appendTo(div);
    return(div);
}
函数换行(开始、结束){
var start=$(开始);
var div=$(“”).addClass(“wrap”).insertBefore(开始);
start.nextUntil(end).add(start).add(end).appendTo(div);
返回(div);
}

您可以在这里看到它的工作原理:。

如果您真的试图在包含div中从一个同级封装到下一个同级,您可以这样做:

function wrap(begin, end) {
    var start = $(begin); 
    var div = $("<div>").addClass("wrap").insertBefore(start);
    start.nextUntil(end).add(start).add(end).appendTo(div);
    return(div);
}
函数换行(开始、结束){
var start=$(开始);
var div=$(“”).addClass(“wrap”).insertBefore(开始);
start.nextUntil(end).add(start).add(end).appendTo(div);
返回(div);
}

你可以在这里看到它的工作:。

你不能用DOM创建元素并将节点附加到它吗?你不能用DOM创建元素并将节点附加到它吗?嗨,Jesse,你能看到jsfiddle.net/JMcJf并告诉我为什么它们被包装在单独的div中吗?我只想用一个div来包装它们…从加粗的价格到最后列出的价格。谢谢上面的方法创建一个类似数组的对象,其中包含每个匹配元素。正在对这个类似数组的对象中的每个元素调用wrap函数。看看@jfriend00是如何做到这一点的。嗨,Jesse,你能看到jsfiddle.net/JMcJf并告诉我为什么它们被包装在单独的div中吗?我只想用一个div来包装它们…从加粗的价格到最后列出的价格。谢谢上面的方法创建一个类似数组的对象,其中包含每个匹配元素。正在对这个类似数组的对象中的每个元素调用wrap函数。下面我们来看看@jfriend00是如何做到这一点的。