Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.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
Javascript 附加的后面的元素不能删除_Javascript_Jquery_Css_Html - Fatal编程技术网

Javascript 附加的后面的元素不能删除

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;背景:红色

我写了下面的代码,当我点击add按钮时追加5个li,但问题是remove按钮,当我点击remove按钮时,我想删除最近的5个li。但它不起作用。 以下是我的片段:

$(文档).ready(函数(){
$(“.moree”)。单击(函数(){
var延迟=0;
对于(var i=0;i<5;i++){
$(本)
.prev()
.append(“
  • 标题2
  • ”) .儿童() .last() .hide() .延迟(延迟) .向下滑动(400); 延迟+=400; } }); $(“.remove”)。单击(函数(){ $(本) .parents('ol').remove() .slideUp(400); }); });
    ol>li{list style:none;padding top:10px;border:1px纯绿色;margin top:10px;}
    .moree{宽度:30px;背景:黄色;}。删除{宽度:30px;背景:红色;}
    
    
  • 头衔
  • 加5 删除5
    ol
    不是
    按钮的父级。请删除
    按钮。您需要稍微修改遍历逻辑

    要获取最后5个元素,请使用
    .slice(-5)
    。另外,如果在调用
    slideUp()
    之前删除()
    元素,它们将消失。您需要先调用
    slideUp()
    。试试这个:

    $(文档).ready(函数(){
    $(“.moree”)。单击(函数(){
    var延迟=0;
    对于(变量i=0;i<5;i++){
    $(this).prev().append('
  • Title 2
  • ).children().last().delay(delay).slideDown(400); 延迟+=400; } }); $(“.remove”)。单击(函数(){ $(this).closest('.content').find('ol li').slice(-5).slideUp(400,function(){ $(this.remove(); }); }); });
    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(“
  • 标题2
  • ”) .儿童() .last() .hide() .延迟(延迟) .向下滑动(400); 延迟+=400; } }); $('body')。在('click','remove',函数()上{ $(本) .parents(“div.content”) .find('ol>li:gt(0)' .slideUp(400,函数(){ $(this.remove(); }) }); });
    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(“
  • 标题2
  • ”) .儿童() .last() .hide() .延迟(延迟) .向下滑动(400); 延迟+=400; } }); $(“.remove”)。单击(函数(){ $('ol>li').slice(-3.remove(); }); });
    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(“
  • 标题2
  • ”) .儿童() .last() .hide() .延迟(延迟) .向下滑动(400); 延迟+=400; } }); $(“.remove”)。单击(函数(){ $(this).parent('.content').find('ol li').slice(-5) .slideUp(400); }); });
    ol>li{list style:none;padding top:10px;border:1px纯绿色;margin top:10px;}
    .moree{宽度:30px;背景:黄色;}。删除{宽度:30px;背景:红色;}
    
    
  • 头衔
  • 加5 删除5
    没问题,很高兴在代码出错时提供帮助。如果我们加2倍,总共加10里。然后单击删除隐藏5。再次单击“删除未隐藏的最后5li”。检查一下。