我已经搜索并看到大多数有这个问题的人都在传递函数调用而不是函数名称,即:setInterval(myFunc(),100) 而不是 setInterval(myFunc,100)
但我不是,它仍然无法工作......我还看到很多人说你需要在不透明度上 parseFloat 才能让它工作,我已经尝试过了,它仍然会产生相同的结果。 ..
无论我是否包含 if(i.style.opacity==1) 子句,函数 runSubMenu1() 似乎只运行一次
不知道从这里去哪里?建议?
<script type="text/javascript">
var run;
var runOpt;
function openSubMenu1(item) {
runOpt=item;
run = setInterval(runSubMenu1,100);
}
function runSubMenu1() {
var i=document.getElementById('menu-1-'+runOpt);
if(i.style.opacity==1){clearInterval(run);}
else{i.style.opacity+=.1;}
}
</script>
编辑:jfriend00 提到的更改,并且 opacity 的值在与页面一起发送的原始 CSS 中设置为 0,经过 1 次迭代后,不透明度似乎为 0.1