※ ChatGPTを利用し、要約された質問です(原文:jQueryでn秒後に要素を最後に移動)
jQueryでn秒後に要素を最後に移動
このQ&Aのポイント
jQueryを使用して、指定した時間後に要素を最後に移動するプログラムを作成しました。
しかし、実行すると要素がうまく移動しない問題が発生しました。
試したが、うまく動作しなかったので、ソースコードを簡潔にする方法を探しています。
$("#top_banner").append('<div style="width:245px; position:absolute; top:0px; left:0px;" class="banner banner2"><img src="01.jpg" width="100%" alt="" /></div>');
$("#top_banner").append('<div style="width:245px; position:absolute; top:0px; left:245px;" class="banner"><img src="02.jpg" width="100%" alt="" /></div>');
$("#top_banner").append('<div style="width:245px; position:absolute; top:0px; left:490px;" class="banner"><img src="03.jpg" width="100%" alt="" /></div>');
$("#top_banner").append('<div style="width:245px; position:absolute; top:0px; left:0px;" class="banner banner1"><img src="04.jpg" width="100%" alt="" /></div>');
$("#top_banner").append('<div style="width:245px; position:absolute; top:0px; left:245px;" class="banner"><img src="05.jpg" width="100%" alt="" /></div>');
$("#top_banner").append('<div style="width:245px; position:absolute; top:0px; left:490px;" class="banner"><img src="06.jpg" width="100%" alt="" /></div>');
$(".banner").click(function(){
$(this).prependTo("#top_banner");
});
$(".banner1").delay(1000).prependTo("#top_banner");
$(".banner2").delay(2000).prependTo("#top_banner");
<div style="width:750px; background-color:#808080; height:90px; padding-top:6px;">
<div style="width:735px; margin:auto; position:relative;" id="top_banner">
</div>
</div>
上記のように記述し、n秒後に自動でバナーが切り替わるプログラムを作成しようしましたが、
うまく動作しません。
クリックすると切り替わるので、その要領で「delay(1000).prependTo("#top_banner")」と記述しました。
1秒後に画像が切り替わるかなと思いましたが、動作しませんでした。
delayはprependToには効かないのでしょうか。
また、上記ソースをもう少し完結にまとめることは可能でしょうか。