在下面的代碼中,我需要編寫刪除類(魔鬼)的元素的功能,我寫了刪除功能,但有些錯誤。感謝您的時間!錯誤,當我試圖刪除一個元素
HTML代碼
<html>
<title>Test</title>
<head>
<link rel="stylesheet" type="text/css" href="style.css">
<script type="text/javascript" src="javascript.js"></script>
</head>
<body onload="draw()" onclick="shoot(event)">
<div id="box" onmousemove="move(event)">
<img id="aim"src="img/1.png" alt="">
</div>
<div id="borderleft"></div>
<div id="info">
</div>
</body>
</html>
CSS代碼
body{
margin: 0px;
}
img{
position: absolute;
}
#box{
background-color: #c0c0c0;
width: 500px;
height: 500px;
cursor: none;
z-index: 2;
}
#info{
width: 524px;
height: 30px;
border: 1px;
background-color: gray;
position: absolute;
}
#borderleft{
top:-25px;
height: 525px;
width: 25px;
margin-left: 499px;
background-color: gray;
position: absolute;
}
#info, #border{
z-index: 3;
}
.devil{
z-index: 1;
}
和JavaScript代碼
function move(e){
if(e.clientX<500 && e.clientY<500){
// alert(e.clientX+":"+e.clientY)
//cautam divul info
info=document.getElementById("info")
//schimbam textul din terior
//innerHTML-
info.innerHTML=e.clientX+":"+e.clientY
//miscam imaginea cu mouse
//gasim imaginea dupa id
aim=document.getElementById("aim");
aim.style.left=(e.clientX-25)+"px";
aim.style.top=(e.clientY-25)+"px";
}
//animatia se face mai bine in pozitia absolute
//la absolute update se face doar la absolut div da la relative la toata pagina
}
//functia care va desena imagini
function draw(){
// generam cantitate de obiecte
N_objects=parseInt(Math.random()*10);
// ciclu-adaugam imaginile in boxa
//gasim box
box=document.getElementById("box");
for(i=0;i<N_objects;i++){
//cream elemente noi
o=document.createElement('img');
//setam adresa
o.src="img/2.png";
//adaugam element in box
box.appendChild(o);
o.setAttribute("class","devil")
//coordonate aleatoare
o.style.left=parseInt(Math.random()*449)+'px';
o.style.top=parseInt(Math.random()*449)+'px';
}
}
function shoot(e){
// alert(e.clientX+":"+e.clientY)
devil=document.querySelectorAll('.devil')
//verificam daca am nimerit in toate imaginile
for(i=0;i<devil.length;i++)
{
if (e.clientX>parseInt(devil[i].style.left))
if(e.clientY>parseInt(devil[i].style.top))
if(e.clientX<parseInt(devil[i].style.left)+50)
if(e.clientY<parseInt(devil[i].style.top)+50)
{
element=getElementByClass("devil");
element.parentNode.removeChild(element)
};
}
}
在函數拍攝中,if語句的內部需要一個用(魔鬼)類去除元素的函數,我寫了這行,但是我有一個錯誤。
element=getElementByClass("devil");
element.parentNode.removeChild(element)
爲什麼你不聲明任何變量?危險! – elclanrs
什麼是錯誤信息? – reporter
我是JavaScript新手,這就是爲什麼我沒有變量,在這段代碼中,我沒有看到我是否需要變量。錯誤:Uncaught ReferenceError:getElementByClass未定義 – Chris