私が検索したところ、この問題を抱えているほとんどの人が関数名ではなく関数呼び出しを渡していることがわかりました。つまり、 setInterval(myFunc,100) ではなく setInterval(myFunc(),100) です
しかし、私はそうではなく、まだ機能しません...また、不透明度で parseFloat を使用して機能させる必要があると多くの人が言っているのを見ました。それを試してみましたが、それでも同じ結果が得られます。 ..
関数 runSubMenu1() は、if(i.style.opacity==1) 句を含めるかどうかに関係なく、1 回だけ実行されるように見えます。
ここからどこへ行くべきかわからない?アドバイス?
<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 によって言及された変更が行われ、ページと共に送信された元の CSS で不透明度の値が 0 に設定されています。1 回の反復の後、不透明度は .1 のようです