Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/376.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.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 删除加载dom后创建的动态元素_Javascript_Jquery - Fatal编程技术网

Javascript 删除加载dom后创建的动态元素

Javascript 删除加载dom后创建的动态元素,javascript,jquery,Javascript,Jquery,我有一系列字段集元素,当其中的所有列表项都不可见时,这些元素被隐藏。问题是,我想在字段集向上滑动并隐藏后实际删除它们,但我很难使其正常工作 $(文档).ready(函数(){ $('body')。在函数(e)上单击“.readBtn”{ var chapterID=$(this.attr('id').replace(/[A-Za-z_]+/g'); $('#chapter_'+chapterid).slideUp(函数(){ 如果(!$(this).is(“:可见”) &&!$(此).lis(

我有一系列字段集元素,当其中的所有列表项都不可见时,这些元素被隐藏。问题是,我想在字段集向上滑动并隐藏后实际删除它们,但我很难使其正常工作

$(文档).ready(函数(){
$('body')。在函数(e)上单击“.readBtn”{
var chapterID=$(this.attr('id').replace(/[A-Za-z_]+/g');
$('#chapter_'+chapterid).slideUp(函数(){
如果(!$(this).is(“:可见”)
&&!$(此).lis(“:可见”)){
//隐藏`字段集`
var parent=$(this).closest(“字段集”);
parent.slideUp();
parent.remove();
}
});
});
});
button.readBtn{
左边距:1米;
}

  • 标记为已读
  • 标记为已读
  • 标记为已读
试试看

$(文档).ready(函数(){
$('.readBtn')。单击(函数(){
var chapterID=$(this.attr('id').replace(/[A-Za-z_]+/g');
$('#chapter_'+chapterID).slideUp(函数(){
如果(!$(this).is(“:可见”)
&&!$(此).lis(“:可见”)){
//隐藏`字段集`
$(this).closest(“fieldset”).hide(function(){
$(this.remove())
})
}
});
});
})
button.readBtn{
左边距:1米;
}

  • 标记为已读
  • 标记为已读
  • 标记为已读

这就是我要做的:

$(document).ready(function () {
    $('body').on("click", ".readBtn", function (e) {
        liEl = $(e.currentTarget).parent();
        var chapterID = $(e.currentTarget).attr('id').split('_').pop();

        $('#chapter_'+chapterID).slideUp(function () {
          if (!liEl.is(":visible") 
             && !liEl.siblings(":visible").length > 0) {
            // Hide `fieldset`
            var parent = liEl.closest("fieldset");
            parent.slideUp();
            parent.remove();
          }
        });
    });
});

建议您重新开始<事件处理程序中的code>e
参数是事件对象,但您将其用作jQuery对象<代码>此处理程序中是单击的按钮。部分代码没有意义,这就是为什么我建议重新开始并从
$(this)
@charlietfl遍历,因此使用$(this)而不是事件e?尝试替换
$(“#chapter”+chapterid)。slideUp()
(请参见小写id)到
$(“#chapter”+chapterid)。slideUp()
>引用错误:未定义chapterid。应该在下面的章节中:$('#chapter_'+chapterd.slideUp(function())我没有看到这种行为发生在这里:这不是您要寻找的行为吗?谢谢来宾!我很高兴这返回了更简单的click事件。我也没有想到将remove调用放入hide函数中。我真的很喜欢hide函数首先完成的方式。
$(document).ready(function () {
    $('body').on("click", ".readBtn", function (e) {
        liEl = $(e.currentTarget).parent();
        var chapterID = $(e.currentTarget).attr('id').split('_').pop();

        $('#chapter_'+chapterID).slideUp(function () {
          if (!liEl.is(":visible") 
             && !liEl.siblings(":visible").length > 0) {
            // Hide `fieldset`
            var parent = liEl.closest("fieldset");
            parent.slideUp();
            parent.remove();
          }
        });
    });
});