2012-05-01 9 views
0

イメージがロードされているときにスピナーを表示し、完了したらイメージを表示するコードです。また、このページは5秒ごとに自動リフレッシュする必要があり、リフレッシュを11秒で停止する、つまり2回リフレッシュする必要があります。しかし、これは機能しません。スピナーコードはCSSファイルにあります。これは動作しません - 何度も何度もリフレッシュし続けます - タイムアウトがリセットされ、varを使って喜びを割り当てようとしました。どんな助力も高く評価されました。ページの更新を中止する - クリア機能を使用しない

<META HTTP-EQUIV="Cache-Control" CONTENT="max-age=0"> 
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache"> 
<META http-equiv="expires" content="0"> 
<META HTTP-EQUIV="Expires" CONTENT="Tue, 01 Jan 1980 1:00:00 GMT"> 
<META HTTP-EQUIV="Pragma" CONTENT="no-cache"> 
<html> 
<head> 
<link rel="stylesheet" href="/css/graph.css" type="text/css" media="screen, projection"> 
<script src="/javascript/jquery-latest.js" type="text/javascript"> 
</script> 
<script type="text/javascript"> 
    var img = new Image(); img.height=600; img.width=2000; 
    $(img).load(function() { 
    $(this).css('display','none'); 
    $(this).animate({ opacity: 0.25 }).fadeIn("slow"); 
    $('#loader').append(this); 
    $(this).animate({ opacity: 1 }) 
    }).error(function() { 
    }).attr('src', 'xyz.png'); 
    var timer = function() { window.location.reload(true);}; 
     window["reload_timer"] = setTimeout(timer, 5000); 
    var timer2 = function() {  
     clearTimeout(window["reload_timer"]); 
     clearTimeout(window["reload_timer2"]);}; 
     window["reload_timer2"] = setTimeout(timer2, 11000); 
</script> 
</head> 
<body id = "page"><div id="loader" class="loading"> 
</div> 
</body> 
</html> 
+3

さて、あなたは**ページをリロードしているに達することはありません実際にはので、それはすでに、再ロードされています忘れ... – leppie

+1

あなたが本当にしていますページをリロードするか、画像を2回リロードするだけですか? –

+0

イメージはあまりにも...それは動作します...このコードはメインウィンドウのiframeに入るので、私はiframeでリロードしようとしましたが、そこに同じ問題がありますclearTimeoutは呼び出されませんか、すべてのリロード時にタイマー。 –

答えて

2

パラメータを添付してページのURLを再読み込みできます。その後、JavaScriptを使用してパラメータを読み取って、ページをリフレッシュした回数を知ることで2回のリフレッシュ後に停止することができます。

それ以外の場合、ページはステートレスです。以前と同じ正確なページがロードされます。ロード済みかどうかはわかりません。このURLパラメータを導入することで、何らかの状態を追跡できます。

+0

URLは画像ですが、私は静的なvarからの(値)を試しましたが、それでもreload()後に0にリセットされます。 –

+0

これはどのように達成できますか?あなたは私に例を教えていただけますか? –

+0

このHTMLコンテンツはiframe onload内にparent.frames ['iframe2']を使用して記述されるため、ページにURLはありません。document.write( "content") –

0

ページをリロードすると、ページがあなたのコードは、タイマ2

+0

あなたは正しいと思います。どのように私はこれを修正することができます。私はタイマーの前にtimer2を置くことができますか?それは働くだろうか? –

関連する問題