Javascript 如何使用jquery包装元素,但仅包装一次
然后在断点之后Javascript 如何使用jquery包装元素,但仅包装一次,javascript,jquery,html,css,Javascript,Jquery,Html,Css,然后在断点之后 <div class="item"> <div class="product"></div> <div class="product"></div> <div class="product"></div> <div class="product"></div> </div> 当我启动setCarouselSlides()时,如何强制它只添加
<div class="item">
<div class="product"></div>
<div class="product"></div>
<div class="product"></div>
<div class="product"></div>
</div>
当我启动
setCarouselSlides()时,如何强制它只添加一次.item
包装代码>函数?检查父元素中是否存在项
css类:
<div class="item">
<div class="item">
<div class="product"></div>
<div class="product"></div>
<div class="product"></div>
</div>
</div>
if(!carouselitems.last().parent().hasClass(“项”)){
旋转木马。切片(i,i+计数)。wrapAll(“”);
}
小提琴。您可以调用展开
if ( ! carouselitems.last().parent().hasClass("item") ) {
carouselitems.slice(i, i+count).wrapAll("<div class='item'></div>");
}
函数设置转盘滑动(计数){
$(“#畅销书.carousel-inner.item.product”).unwrap()
var carouselitems=$(“#畅销书.carousel-inner.product”).unwrap();
对于(变量i=0;i
这不起作用,因为如果已经有一个类为.item
的父级,它就什么都不做,但我需要它从4个元素移动到3个元素来包装,例如。是否需要将产品的div划分为3个元素的组,并用item
div包装每个组?是,这正是我所需要的,但它也必须是动态的,以便在遇到断点时不会将整个.item包装到另一个.itemCode中。我不知道你说的“断点”是什么意思——当然没有调试器断点。您的意思是,在处理任意数量的旋转木马元素或三重块后,包装可能会中断吗?所谓断点,我指的是当$(窗口)
的宽度达到给定点时,调用函数以减少包装的产品数量的点。也就是说,如果宽度<760,count=2代码>如果宽度<950count=4
并且如果宽度<950&&width>760count=3
为什么不使用旋转木马呢?jQuery使用.each方法提供了对对象的简单迭代@雅各布:你能举个例子说明在我的情况下是如何做到这一点的吗?这是我用的一把小提琴。每种方法都能满足你的要求。希望这能有所帮助。让我知道。:)for循环肯定是更好的方法。用.each方法解决这个问题不值得费事或额外的代码。我已经更新了小提琴以使用for循环。但是它只包装了2个元素,尽管您已经声明在第二次启动函数时它应该包装3个元素
if ( ! carouselitems.last().parent().hasClass("item") ) {
carouselitems.slice(i, i+count).wrapAll("<div class='item'></div>");
}
function setCarouselSlides(count){
$("#bestselling .carousel-inner .item .product").unwrap()
var carouselitems = $("#bestselling .carousel-inner .product").unwrap();
for (var i = 0; i < carouselitems.length; i += count) {
carouselitems.slice(i, i + count).wrapAll("<div class='item'></div>");
}
$('#bestselling .carousel-inner .item').first().addClass('active');
}