javascript中getelementbyid内的变量不起作用

javascript中getelementbyid内的变量不起作用,javascript,Javascript,我想在多个div上重用图像交换函数,但该函数没有确认var rotator=getelementbyid(adbox)上的adbox变量 window.onload=animatez(动画) animatez函数应该将div id“animate”传递给函数内的getelementbyid 函数animatez(adbox){ var-adbox; var rotator=document.getElementById(adbox); var images=rotator.getElement

我想在多个div上重用图像交换函数,但该函数没有确认var rotator=getelementbyid(adbox)上的adbox变量

window.onload=animatez(动画)

animatez函数应该将div id“animate”传递给函数内的getelementbyid

函数animatez(adbox){
var-adbox;
var rotator=document.getElementById(adbox);
var images=rotator.getElementsByTagName(“img”);
var计数器=1;
setInterval(函数(){
对于(var i=0;i

#动画{宽度:200px;高度:200px;背景色:透明;
边距:自动;位置:绝对;
} 
img{宽度:200px;高度:200px;显示:无;}

为什么要定义两次adbox变量?一次在
函数animatez(adbox){
和一次在
变量adbox
…?

为什么要定义两次adbox变量?一次在
函数animatez(adbox){
和再次在
var adbox
…?

window.onload需要设置为等于一个函数,而不是调用animatez函数的结果。您可以这样做

window.onload = function(){
    animatez('animate');
};
还要注意,您需要向animatez函数传递一个字符串,所以我引用了animate

编辑:像其他一些答案一样,你也应该删除 var-adbox;
函数中的行。

window.onload需要设置为等于函数,而不是调用animatez函数的结果。您可以这样做

window.onload = function(){
    animatez('animate');
};
还要注意,您需要向animatez函数传递一个字符串,所以我引用了animate

编辑:像其他一些答案一样,你也应该删除 var-adbox;
函数中的行。

您需要为函数提供一个字符串参数。如果没有引号,则动画未定义,javascript将抛出错误


你需要给函数一个字符串参数。如果没有引号,动画是未定义的,javascript会抛出错误


为什么即使将adbox作为参数传递也要声明它?请删除var adbox;然后重试。为什么即使将adbox作为参数传递也要声明它?请删除var adbox;然后重试。感谢我修复了代码,还在学习javascript,为什么在ca之前必须将animatez函数包装到另一个函数中lling window load?window.onload允许您指定在窗口完成加载时将调用的函数。它需要设置为等于函数引用。这可以像在我的示例中那样以内联方式定义,也可以是像
window.onload=myFunction
这样的命名函数,而不带将立即调用函数的括号elly。你也不能定义传递给onload函数的参数。这将始终是事件对象。将你的animatez函数包装在另一个函数中可以传递你想要的参数。感谢我修复了代码,还在学习javascript,为什么animatez函数必须包装在另一个函数中重新调用window load?window.onload允许您指定在窗口完成加载时将调用的函数。它需要设置为等于函数引用。这可以像我的示例中那样内联定义,也可以是一个命名函数,如
window.onload=myFunction
,没有调用函数imm的括号ediatelly。此外,您无法定义传递给onload函数的参数。这将始终是事件对象。将animatez函数包装到另一个函数中可以传递所需的参数。