ローディングGIFを5秒間自動表示する
ユーザーがサイトにアクセスしたときに自動的にローディングGIFを表示し、5秒後に消えるようにしたいのですが、どうすればいいですか?
このスクリプトは、私が望むことをやってくれますが、自動的に実行されません。ユーザーはボタンをクリックしなければならず、これでは目的を達成できません。
<input type = "button" value = "Show image for 5 seconds" onclick = "show()"><br><br>
<div id = "myDiv" style="display:none"><img id = "myImage" src = "images/ajax-loader.gif"></div><br>
<script type = "text/javascript">
function show() {
document.getElementById("myDiv").style.display="block";
setTimeout("hide()", 5000); // 5 seconds
}
function hide() {
document.getElementById("myDiv").style.display="none";
}
</script>
もし私がこれを行うことができる任意の方法、またはそれを行うためのより良い方法がある場合は、コメントをしてください。
9
3
onclick="show()"
を削除し、JavaScriptブロックの最後の行として
show();` を追加するだけです。また、私はグローバル名前空間汚染に敏感なので、次のようにします。
window.onloadは試されましたか?
というような内容で。
スクリプトの最後に
window.onload = show;
を追加すると、ページの読み込みが終了すると同時にローダーが表示されます。 このイベントは、ページ上の要素を操作する前に、ページ全体が利用可能であることを確認するため、ユーザーがページを開いたときに行いたいことのために使用することができます。