私は次のコードを持っています:
<script type="text/javascript">
$("#contact_min").toggle(function(){
$("#contact_min").animate({
height: "300px"
}, 1000 );
$(".arrow").html("▼")
$(".popupcontent").html('foobar')
},
function(){
$("#contact_min").animate({
height: "28px"
}, 1000 );
$(".arrow").html("▲")
$(".popupcontent").html("")
});
</script>
<script type="text/javascript">
$(document).ready(function(){
setTimeout(function(){
$("#contact_min").animate({
height: "300px"
}, 1000 );
$(".arrow").html("▼")
$(".popupcontent").html('foobar')
}, 25000);
});
</script>
これは完全に機能します。divをクリックして開くか、25秒待ってから開きます。ただし、クリックして25秒待つと、もう一度クリックして閉じる必要があります。これは、既にクリックした場合でも、タイムアウトによってボックスが開いたままになるためです。ボックスをクリックした後にタイムアウトを停止して、25秒後にボックスが開かないようにする方法はありますか?