2012-03-07 13 views
0

私はこのコードを持っており、アニメーションGIFを3秒後に消したいと思っています。私はwindow.onload = loadingGif()を追加する必要があることを知った。ページのロード時に 'loadingGif'機能が起動されるようにします。私はこのコードは、どのようにしなければならないのかという問題を抱えています。私は何が間違っているのか知りたいですか?ありがとう。アニメーションGIFをJavaScriptで消す方法

私は間違ったコードを投稿しました。それはでなければならない:

<body> 

<script type="text/javascript"> 
var counter = 3;        
function downcount() { 
    document.getElementById('digit').firstChild.nodeValue = counter ; 
    if (counter == 0) { 
    document.getElementById('loading').style.display = 'none'; 
    document.getElementById('msg').style.display = 'block'; 
    } else { 
    counter--; 
    window.setTimeout('downcount()', 1000); 
    } 
} 
window.onload=downcount; 
</script> 

<div id="loading"> 
    <img src="loading/loading40.gif"/> 
</div> 

<div id="msg" style="display:none"> 
    <?PHP echo $_SESSION['msg'];?> 
</div> 
+0

'something.style = display:none;'は無効ですJavaScript。 JavaScriptとjQueryが混在しています。私はそれらの1つを決定することをお勧めします。コードをより一貫して読みやすくすることができます。 'window.onload = loadingGif();'は、関数自体ではなく、 'window.onload'に' loadingGif'の*戻り値*を割り当てます。いくつかのJavaScriptの基本を改訂することをお勧めします。 –

+0

「どのように消えるか」 - Catch 22とそのキャラクターは「誰かが消えてしまう」ということが何であるか不思議に思っています;) – MMM

+1

しかし真剣に言えば、コードには多くの構文エラーや間違いがあります。すべてを書き直す。 – MMM

答えて

0

imgタグを閉じる。

また、数字はどこですか?それが存在しない場合はJSエラーが発生します。

0

あなたは3秒間待つために3つの1秒setTimeoutをやっていますか?ここに私の頭の中で、より簡単な解決策があります...

window.onload = setTimeout(removeImg, 3000) 
var removeImg = function() { 
    document.getElementById('loading').style.display = 'none' 
    document.getElementById('msg').style.display = 'block' 
} 
関連する問題