Javascript 附加的后面的元素不能删除
我写了下面的代码,当我点击add按钮时追加5个li,但问题是remove按钮,当我点击remove按钮时,我想删除最近的5个li。但它不起作用。 以下是我的片段:Javascript 附加的后面的元素不能删除,javascript,jquery,css,html,Javascript,Jquery,Css,Html,我写了下面的代码,当我点击add按钮时追加5个li,但问题是remove按钮,当我点击remove按钮时,我想删除最近的5个li。但它不起作用。 以下是我的片段: $(文档).ready(函数(){ $(“.moree”)。单击(函数(){ var延迟=0; 对于(var i=0;ili{list style:none;padding top:10px;border:1px纯绿色;margin top:10px;} .moree{宽度:30px;背景:黄色;}。删除{宽度:30px;背景:红色
$(文档).ready(函数(){
$(“.moree”)。单击(函数(){
var延迟=0;
对于(var i=0;i<5;i++){
$(本)
.prev()
.append(“ol>li{list style:none;padding top:10px;border:1px纯绿色;margin top:10px;}
.moree{宽度:30px;背景:黄色;}。删除{宽度:30px;背景:红色;}
头衔
加5
删除5
ol
”)
.儿童()
.last()
.hide()
.延迟(延迟)
.向下滑动(400);
延迟+=400;
}
});
$(“.remove”)。单击(函数(){
$(本)
.parents('ol').remove()
.slideUp(400);
});
});代码>
不是按钮的父级。请删除按钮。您需要稍微修改遍历逻辑
要获取最后5个元素,请使用.slice(-5)
。另外,如果在调用slideUp()
之前删除()
元素,它们将消失。您需要先调用slideUp()
。试试这个:
$(文档).ready(函数(){
$(“.moree”)。单击(函数(){
var延迟=0;
对于(变量i=0;i<5;i++){
$(this).prev().append('ol>li{
列表样式:无;
填充顶部:10px;
边框:1px纯绿色;
边缘顶部:10px;
}
莫雷先生{
宽度:30px;
背景:黄色;
}
.移除{
宽度:30px;
背景:红色;
}
头衔
加5
删除5
使用父类('div.content')
查找主div,然后使用li将其设置为ol
$('body').on('click', '.remove',function () {
$(this)
.parents('div.content') //Get the main div
.find('ol > li:gt(0)') //Find ol and li index greater then 0
.slideUp(400,function(){ //Slide up with remove from DOM
$(this).remove();
})
});
$(文档).ready(函数(){
$(“.moree”)。单击(函数(){
var延迟=0;
对于(var i=0;i<5;i++){
$(本)
.prev()
.append(“ol>li{list style:none;padding top:10px;border:1px纯绿色;margin top:10px;}
.moree{宽度:30px;背景:黄色;}。删除{宽度:30px;背景:红色;}
头衔
加5
删除5
只需从父节点遍历到所需元素并将其切片3
$(文档).ready(函数(){
$(“.moree”)。单击(函数(){
var延迟=0;
对于(var i=0;i<3;i++){
$(本)
.prev()
.append(“ol>li{list style:none;padding top:10px;border:1px纯绿色;margin top:10px;}
.moree{宽度:30px;背景:黄色;}。删除{宽度:30px;背景:红色;}
头衔
加3
删除3
从父元素遍历到所需元素,然后根据需要切片。这是5英镑
$(文档).ready(函数(){
$(“.moree”)。单击(函数(){
var延迟=0;
对于(var i=0;i<5;i++){
$(本)
.prev()
.append(“ol>li{list style:none;padding top:10px;border:1px纯绿色;margin top:10px;}
.moree{宽度:30px;背景:黄色;}。删除{宽度:30px;背景:红色;}
头衔
加5
删除5
没问题,很高兴在代码出错时提供帮助。如果我们加2倍,总共加10里。然后单击删除隐藏5。再次单击“删除未隐藏的最后5li”。检查一下。
”)
.儿童()
.last()
.hide()
.延迟(延迟)
.向下滑动(400);
延迟+=400;
}
});
$(“.remove”)。单击(函数(){
$(this).parent('.content').find('ol li').slice(-5)
.slideUp(400);
});
});代码>
”)
.儿童()
.last()
.hide()
.延迟(延迟)
.向下滑动(400);
延迟+=400;
}
});
$(“.remove”)。单击(函数(){
$('ol>li').slice(-3.remove();
});
});代码>
”)
.儿童()
.last()
.hide()
.延迟(延迟)
.向下滑动(400);
延迟+=400;
}
});
$('body')。在('click','remove',函数()上{
$(本)
.parents(“div.content”)
.find('ol>li:gt(0)'
.slideUp(400,函数(){
$(this.remove();
})
});
});代码>
).children().last().delay(delay).slideDown(400);
延迟+=400;
}
});
$(“.remove”)。单击(函数(){
$(this).closest('.content').find('ol li').slice(-5).slideUp(400,function(){
$(this.remove();
});
});
});代码>