您好,当您单击我的菜单的welcomediv id 时,下面的代码会显示叠加层。当覆盖层显示并且您单击元素本身时,它将首先删除他内部的 div 我想做的是,一旦您单击它们,当您单击覆盖层外部时,也会将其与覆盖层内部的元素一起删除
init=()=>{
//SELECT & BIND (CLICK) EVENT
document.querySelector('a.menuToggle, a#welcomeDivs').addEventListener('click',modal.overlay.init);
}
modal={
overlay:{
init:()=>{
//CREATE OVERLAY
var overlay = document.createElement('overlay');
overlay.id = 'welcomeDivsss';
//SET (CLICK) EVENT TO REMOVE ITSLEF
overlay.addEventListener('click',modal.overlay.remove);
//APPEND TO INTERFACE
document.body.appendChild(overlay);
// After overlay added to html. "welcomeDivsss" is overlay id you specified.
$( "#welcomeDivsss" ).append( '<div class="parela" id="welcomeDiv" <div class="inner_box"> <a onclick="click" class="closes"></a> </div> </div>' );
},
remove:(e)=>{
//REMOVE ITSELF
e.target.parentNode.removeChild(e.target);
}
}
}
//ON DOCUMENT LOAD RUN INIT
document.addEventListener('DOMContentLoaded',init);
最佳答案
你改变你的删除功能怎么样?
如果我理解您的问题,该代码将解决该问题:
...
remove:()=>{
// you can remove by the id, because it's unique
document.getElementById('welcomeDivsss').remove();
}
...
关于javascript - 单击一次并删除所有元素而不是一一javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43458166/