2

私はここに関数を持っています。私がしたいのは、div を最初に表示してから、幅をスムーズに変更することです。残念ながら、表示されると幅がすでに変更されています。

CSS:

#frame12{
    opacity:0;
    filter:alpha(opacity=0);
    width:100;
}

jQuery:

function animatestamp(){
    jQuery("div#frame12").css({'opacity':'1','filter':'alpha(opacity=100)'}).animate({
    width:'451px'
},animatestamp);
}
4

3 に答える 3

1

最初に不透明度とフィルターをアニメーション化してから、PSLがよく言っているように幅をアニメーション化しますが、CSSでも「幅:100;」を変更します 「幅:100px;」に (測定単位「px」を追加) または、div の初期幅が画面幅になり (CSS に境界線を追加して、違いを視覚的に確認します)、js をよりシンプルで読みやすくするために、Javascript でチェーンを使用します。

CSS:

#frame12{    
   opacity:0;
   filter:alpha(opacity=0);
   width:100px;  /*Add px to avoid max screen witdth and CSS Flash */
   border: solid 1px; /* to see the real div width */
 }

Javascript:

function animatestamp() {
    $("div#frame12")
        .animate({ 'opacity': 1, 'filter': 'alpha(opacity=100)' }, 2000)
        .animate({ width: '451px'}, 1000);
}
于 2013-07-03T04:33:59.980 に答える