我想在多个div上重复使用图像交换函数,但函数未确认var rotator = getelementbyid(adbox)上的adbox变量。JavaScript中的getelementbyid变量不起作用
window.onload = animatez(animate);
animatez函数应该将“animate”作为div id传递给函数内的getelementbyid。
function animatez(adbox) {
var adbox;
var rotator = document.getElementById(adbox);
var images = rotator.getElementsByTagName("img");
var counter = 1;
setInterval(function() {
for (var i = 0; i < images.length; i++) {
images[i].style.display = "none"; }
images[counter].style.display = "block";
counter++;
if (counter == images.length) {
counter = 0;}
}, 1000);
};
window.onload = animatez(animate);
<style>
#animate { width:200px; height:200px; background-color:transparent;
margin:auto; position:absolute;
}
img {width:200px; height:200px; display:none;}
</style>
<body>
<div id="animate">
<img src="surveyfunny.png">
<img src="myanswertoasurveyquestion.png">
<img src="funny-wheredoyoulive.png">
<img src="funnysurveyquestion2.png">
<img src="funnysurveyquestion.png">
</div>
你为什么要重新声明,即使你是把它当作一个参数adbox?删除var adbox;然后再试一次。 –