divをアニメーション化する次のコードがあります。それは完璧に動作します:匿名関数でのみUncaughtTypeエラー
function fadeAndSlideIn(el,m,t) {
el.style.opacity = 0;
el.style.marginTop = 0;
var oi = 1/(t * 60);
var mi = m/(t * 60);
var tick = function() {
el.style.opacity = +el.style.opacity + oi;
el.style.marginTop = (parseInt(el.style.marginTop) + mi) + 'px';
if (+el.style.opacity < 1)
(window.requestAnimationFrame && requestAnimationFrame(tick)) || setTimeout(tick, 16);
}
tick();
}
(function() {
fadeAndSlideIn(document.getElementById('pan1'),125,1);
setTimeout(function() {
fadeAndSlideIn(document.getElementById('pan2'),125,1);
},500);
setTimeout(function() {
fadeAndSlideIn(document.getElementById('pan3'),125,1);
},1000);
})();
しかし、私はこのような無名関数にfadeAndSlideIn
機能を変更する場合:
var fadeAndSlideIn = function(el,m,t) {
Uncaught TypeError: Cannot set property 'opacity' of undefined
を私のプログラムが動作しないと、私は次のエラーを取得しますなぜ関数declerationはパフォーマンスを変更するのですか?すべてのコードは、本文の末尾にある<script
タグにあります。
'el'をデバッグすることはできますか? – jdmdevdotnet
'fadeAndSlideIn'から返される値はありません – guest271314
これは唯一の変更だと思います。 –