2011-08-05 4 views
0

アニメーションGIFを使用するのではなく、JQueryを使用してアニメーションバナーを作成しようとしています。 Cycle PluginはFireFoxでこの井戸を実行しますが、SafariとChromeでは、最初にページを読み込んだときに「スライドショー」を観察せず、1つの画像しか表示しません。私はこれを.load()で解決し、画像をプリロードし、display:hiddenを次の画像に隠してみました。不思議なことに、ロードする単一のイメージが実際にはすべてのイメージの最小イメージ(ファイルサイズ)であることに気付きました。JQueryサイクルプラグイン、Webkitブラウザ、画像に関する問題

ご了承ください。私は困惑している。

jQuery(document).ready(function() { 
    $('#banner').cycle({ 
     fx: 'none', 
    delay: 0, 
    speed: 500, 
    autostop: true, 
     autostopCount: 8, 
timeoutFn: function(currElement, nextElement, opts, isForward) { 
      opts.myTimeoutCount = (opts.myTimeoutCount + 1) % opts.myTimeouts.length; 
      return opts.myTimeouts[opts.myTimeoutCount]; 
    }, 
    myTimeouts: [1000,1000,500,500,500,2000,2000,1000], 
    myTimeoutCount: 0 
    }); 
}); 


<div id="banner"> 
    <img src="images/if_300x250_banner_1.gif" width="300" height="250" /> 
    <img src="images/if_300x250_banner_2.gif" width="300" height="250" /> 
    <img src="images/if_300x250_banner_3.gif" width="300" height="250" /> 
    <img src="images/if_300x250_banner_4.gif" width="300" height="250" /> 
    <img src="images/if_300x250_banner_5.gif" width="300" height="250" /> 
    <img src="images/if_300x250_banner_6.gif" width="300" height="250" /> 
    <img src="images/if_300x250_banner_7.gif" width="300" height="250" /> 
    <img src="images/if_300x250_banner_8.gif" width="300" height="250" /> 

+0

現在の画像を先の画像に置き換えて、各画像をループしたいだけですか? – RobB

+0

はいRob、まさに私がやろうとしていること。しかし私は、各画像が表示される時間を制御できる必要があります。したがって、TimeoutFN関数。 – touchoftech

答えて

1

持続性が報わ。問題はJQuery、Cycle Plugin、Webkitブラウザではなく、画像であることが判明しました。私がgifを作成するために使ったソースPSDは、Photoshopのレイヤーをアニメーションのタイムラインで保持していて、Photoshopの「Save for Web & Devices」を使っているときにデータが含まれていました。解決方法は、アニメーションパレットの「アニメーションを削除」し、gifをもう一度保存することでした。

これを熟考したすべての人に感謝します。

関連する問題