2011-02-02 5 views
0

divには、ページに来ると自動的に.animateのページからスライドされています。私は最初の訪問に取り組んでいますが、サイトがキャッシュされて再訪すると、その機能は起動しないようです。いくつかのリフレッシュが最終的にそれを再び得ることができますが、私は信頼できるものが必要です。キャッシュされたサイトでのJailの不具合の問題

私は、キャッシュされたサイトでもスクリプトが再起動できるようにする必要があるようです。

これは私が今実行しているスクリプトです。

$(document).ready(function(){ 

    $("#logo_fixed img").bind("load", function() { $(this).animate({"left": "+=434px"}, "slow"); }); 

}); 

IMGが位置です:絶対、私はこれを行うためのいくつかの異なる方法を試してみました

CSSでページをオフに設定し、しかし、私はまた、画像を必要とする問題が前にロードする必要がありますそれはスライドインです。そして、それが最後のものになることを望んではいけません。サイトは文句を言わない火、それをキャッシュされている場合

は、私はまた、

$(document).ready(function() { 

    $('#logo_fixed img').load(function(){ 

     $(this).animate({"left": "+=434px"}, "slow") 

    }); 

}); 

同じ結果を試みたが、リロードは、それが働いて取得します。

誰にでも助けがありましたら、感謝します。

$(document).ready(function() { 
    $('#logo_fixed img').load(function(){ 
     $(this).animate({"left": "+=434px"}, "slow") 
    }); 
    d = new Date(); 
    $("#myimg").attr("src", $("#myimg").attr("src")+d.getTime()); 
}); 

たびにリロードする画像を強制する:

+0

画像がロードされているかどうかを確認し、同じであれば同じアニメーションを実行できますか? – Orbit

答えて

0

画像がキャッシュされているとき、それは「ロードさ」である(すなわち、負荷イベントが発生します)。

$( "#logo_fixed img").bindの代わりにliveを使用できます。コードをdocument.ready関数の外に置きます。

私は次の操作を行います:

var logoLoaded = false; 

$("#logo_fixed img").live("load", function() { logoLoaded = true }); 

$(document).ready(function() { 

    if(!logoLoaded){ 

     $('#logo_fixed img').load(function(){ 

      $(this).animate({"left": "+=434px"}, "slow") 

     }); 
    }  
    else 
    { 
     $('#logo_fixed img').animate({"left": "+=434px"}, "slow") 
    } 

}); 

は、最も簡潔なコード、おそらくビットを改善することができるが、それはあなたのアニメイトイベント(待機「までの早すぎるをオフに解雇しないことを保証しますdocument.ready)が、document.readyの前にイメージの読み込みを考慮に入れます。

関連する問題