Javascript无法删除动态创建的元素
我正在尝试制作/编写一个JS事件处理程序,当从图像列表中单击图像时,它会执行一些操作。为此,我粘贴了Javascript无法删除动态创建的元素,javascript,html,css,event-handling,dom-events,Javascript,Html,Css,Event Handling,Dom Events,我正在尝试制作/编写一个JS事件处理程序,当从图像列表中单击图像时,它会执行一些操作。为此,我粘贴了div我的目标和Js代码。我只是想,当一个图像被点击时,它会显示其信息,当第二个图像被点击时,它的信息会显示出来(覆盖之前图像的描述),依此类推。 我的代码: window.onload=函数(){ var links=document.getElementsByClassName('a'); 对于(变量i=0;ishowpic(this),2000); e、 预防默认值(); }); } 函数
div
我的目标和Js代码。我只是想,当一个图像被点击时,它会显示其信息,当第二个图像被点击时,它的信息会显示出来(覆盖之前图像的描述),依此类推。
我的代码:
window.onload=函数(){
var links=document.getElementsByClassName('a');
对于(变量i=0;ishowpic(this),2000);
e、 预防默认值();
});
}
函数showpic(pic){
document.getElementById('loading').style.display='none';
var imagedescription=document.createElement('div');
setAttribute('id','imagedescription');
var desctext=document.createTextNode(“”);
imagedescription.appendChild(desctext);
document.getElementById('placeholder').style.display='block';
var source=pic.getAttribute('href');
var placeholder=document.getElementById('placeholder');
占位符.setAttribute('src',source);
if(pic.getAttribute('title')){
var text=pic.getAttribute('title');
}否则{
var text='';
}
如果(文本=“1”){
prob='1'
ACE=1
方格=5
结果={
某物:'55',
有些东西1:‘44’,
一些东西2:‘556’
}
}否则如果(文本=“2”){
prob='1'
ACE=1
方格=5
结果={
某物:'55',
有些东西1:‘44’,
一些东西2:‘556’
}
}否则如果(文本=“3”){
prob='1'
ACE=1
方格=5
结果={
某物:'55',
有些东西1:‘44’,
一些东西2:‘556’
}
}否则如果(文本=“4”){
prob='1'
ACE=1
方格=5
结果={
某物:'55',
有些东西1:‘44’,
一些东西2:‘556’
}
}否则{
概率='概率95%'
面=1
地标=5
结果={
鼻子:“(303131)”,
嘴右:“(313141)”,
右眼:“(314114)”,
左眼:“(291117)”,
嘴左:‘(296143)’
}
}
test=`${prob}aces${aces}arks${arks}
某物:${results.something}
某物1:${results.something1}某物2:${results.something2}
某物2:${results.something2}左:${results.something}
`
测试1=``
var imageDescription_d=document.createElement('div');
imageDescription\u d.setAttribute(“id”、“imageDescription\u d”);
var imageDescription_d2=document.createElement('div');
imageDescription_d2.setAttribute(“id”、“imageDescription_d2”);
if(imagedescription.firstChild.nodeType==3){
imagedescription.firstChild.nodeValue=文本;
imageDescription\u d.innerHTML=测试
imageDescription\u d2.innerHTML=test1
}
//imageDescription\u d2.innerHTML=test1
占位符.parentNode.appendChild(imagedescription);
imagedescription.parentNode.insertBefore(imagedescription\u d,imagedescription.nextSibling);
imageDescription\u d.parentNode.insertBefore(imageDescription\u d2,imageDescription\u d.nextSibling);
返回false;
}
}
#加载{
显示:无;
}
#图像库{
显示:内联块
}
#结果{
显示:无;
}
选择下面的图片
-
-
-
-
你的代码和思维方式有点混乱。您需要使用利用大多数HTML功能且可伸缩的简单方法。
如果事情变得漫长而复杂,总是要寻找另一种更简单的方法,那么很可能有一种方法
我给你写了一个POC,说明了你想用数据标记和内部HTML
实现什么:
const description=document.querySelector(“.description”);
常量描述={
img0:“干草即时消息文本”,
img1:“hay im anouther文本”
};
document.addEventListener(“单击”,(e)=>{
if(例如target.getAttribute(“数据描述”)){
描述.内部