2011-08-14 12 views
0
var StreamFlash = ""; 

function Refresh() { 
    if (EVENTDATA.events[RefreshEventsCurrentID].data.StreamFlash) { 
     if (StreamFlash == "") { 
      $('td.playercontainer').html(EVENTDATA.events[RefreshEventsCurrentID].data.StreamFlash); 
      StreamFlash = EVENTDATA.events[RefreshEventsCurrentID].data.StreamFlash; 
     } 
     if (StreamFlash != EVENTDATA.events[RefreshEventsCurrentID].data.StreamFlash) { 
      console.log('Load'); 
      $('td.playercontainer').html(EVENTDATA.events[RefreshEventsCurrentID].data.StreamFlash); 
      StreamFlash = EVENTDATA.events[RefreshEventsCurrentID].data.StreamFlash; 
     } 
    } 
    setTimeout(Refresh, 1000); 
} 

関数Refresh(); 1秒おきにトリガされます。これは、変数EVENTDATA(json)がフラッシュオブジェクトの変更をチェックします。ストリームオブジェクトが変更された場合、1秒ごとに読み込まれます。
どうすればいいですか?JSイベントは1秒ごとにトリガーされますが、一度にアクションを実行します。

答えて

0

実際にはコードが正しく動作するはずです:StreamFlashが新しいデータと異なるかどうかをテストすると、データが変更されたときにのみ実行されます。

私は、コードを少し単純化するが、それはまだ動作しない場合は、それが実際に変化しないかどうかを確認するためにEVENTDATAStreamFlashデータを記録しようと思います。

var StreamFlash = ""; 

function Refresh() { 
    var remoteStreamFlash = EVENTDATA.events[RefreshEventsCurrentID].data.StreamFlash; 
    if (remoteStreamFlash && StreamFlash != remoteStreamFlash) { 
     $('td.playercontainer').html(remoteStreamFlash); 
     StreamFlash = remoteStreamFlash; 
    } 
    setTimeout(Refresh, 1000); 
} 
関連する問題