2

スライドショー効果を実装するためにjQueryサイクルを使用しています。

スライドショーの画像をクリックすると、次の画像にスライドできます。

これはすべてのブラウザで正常に機能します。Safariでのみ、本当に奇妙なことが起こります。最初のページが読み込まれると、スライドショーの画像はまったく表示されません。ページをリロードした後(更新するか、アドレスバーの横にある[移動]ボタンを押す)、すべてが正常に機能します。

ここで何が起こっているのですか?私は何か間違ったことをしていますか?どうすればこれを修正できますか?


アップデート:

jQueryとCycleプラグインの両方の最新バージョンを使用しています。.cycle()を呼び出すために使用しているコードは次のとおりです。

if (1 < $('.image-list li').size()) {
 $('.image-list').cycle({ fx: 'uncover', speed: 200, timeout: 4000, next: $('.image-list li') }).addClass('image-list-cycle');
}
4

2 に答える 2

8

$(window).load代わりに使用$(document).readyすることも役立つようです。

于 2011-07-18T13:28:05.143 に答える
3

このエラーをグーグルで検索すると、画像に適用されたjQueryプラグインに問題を抱えている人がたくさんいます。トラブルは通常、位置と表示の観点から発生します。

私の感じでは、画像が読み込まれる直前にスクリプトが実行され、画像の循環に使用される幅/長さの値が間違っている場合があります。このようなものをページに追加することをお勧めします(クラスと名前をニーズに合わせて調整してください)。

<script type="text/javascript">
  $(document).ready(
    function() {
      $('.image-list li').each(function({$(this).css({
        [SET HERE POSITION, WIDTH, ETC]});});
      $('.image-list').cycle([OPTIONS]);});
</script>
于 2009-10-08T13:42:39.420 に答える