我想制作自动工作的简单幻灯片(无按钮)。图像应该从下到上滑动。我已经解释了代码之后的内容。
羟色胺:
<ul id="imgSlider1">
There are images here in <li> tags
</ul>
JavaScript:
window.onload = initAll;
function initAll(){
var img = document.getElementById("imgSlider1");
if((parseInt(window.getComputedStyle(img).top)) == -1160){
img.style.top = 290 +"px";}
var i = parseInt(window.getComputedStyle(img).top);
var j = i-290;
slideIt(i, j, img);
}
function slideIt(initTop, finalTop, target){
if(initTop == finalTop){
window.setTimeout(initAll, 10000);
}
target.style.top = (initTop - 1)+"px";
var presentTop = parseInt(window.getComputedStyle(target).top);
window.setTimeout(function(){ slideIt(presentTop, finalTop, this)},20)
}
我在这里尝试做的事情:“initAll()”函数获取列表的“顶部”,并为“i”分配了该值。变量“j”被分配了“i-290”(因为 290px 是每个图像的高度)。现在“i”、“j”和目标对象(这里是图像列表)被传递给下一个函数“slideIt()”。'slideIt()' 函数每次从目标对象的 'top' 中减去 '1px' 并一遍又一遍地调用,直到 'top' 等于 'finalTop'(分配给 'j' 的值)。当这个条件满足时,'initAll' 函数在 10 秒后被回调。
现在,为什么这段代码不起作用?
控制台说:“无法设置未定义的属性‘顶部’”