2013-06-19 67 views
3

我有一個關於重新加載div與jQuery-.load的問題。代碼:jQuery .load停止頁面中嵌入的視頻/重新加載整個頁面

<h1>Official Live-Stream</h1> 
    <object width="560" height="315" data="http://www.dailymotion.com/embed/video/x10sbxw"></object> 
    </br> 
    </br> 

    <script> 
     (function($) 
     { 
      $(document).ready(function() 
      { 
       $.ajaxSetup(
       { 
        cache: false, 
        beforeSend: function() { 
         $('#content').hide(); 
         $('#loading').show(); 
        }, 
        complete: function() { 
         $('#loading').hide(); 
         $('#content').show(); 
        }, 
        success: function() { 
         $('#loading').hide(); 
         $('#content').show(); 
        } 
       }); 
       var $container = $("#liveracingblog"); 
       $container.load("../live/addon/addon_ticker.php"); 
       var refreshId = setInterval(function() 
       { 
        $container.load('../live/addon/addon_ticker.php'); 
       }, 30000); 
      }); 
     })(jQuery); 
    </script> 

    <div id="liveracingblog"></div> 

我的問題是,每30秒不僅liveracingblog-DIV重新加載,但整個頁面,這使得嵌入線#2站的視頻。

你可以在這裏觀察到的問題:http://www.racingblog.de/racingbloglive/(代碼是一個Wordpress頁面模板的一部分,但我不認爲事情)

如何這個問題能解決?

+0

你試過用$ .get()來代替:'.get(「../ live/addon/addon_ticker.php」,function(content){$ container.html(content);});'' ? –

+0

我改變了'$ container.load('../ live/addon/addon_ticker.php');'到'$ .get(「../ live/addon/addon_ticker.php」,function(content){$ container .html(conten ?? t);});'(我想,這就是你的意思)。仍然是同樣的問題... – janw

+0

雅,這是我的意思。如果您使用圖片替換視頻,是否仍然存在相同的問題?這是爲了測試其可能導致此行爲的Flash對象。 –

回答

0

我看了一下頁面,#content div顯示包含了你隱藏並顯示在js中的嵌入視頻。你只想隱藏和顯示#liveracingblog DIV

下面的變化應該工作:

  $.ajaxSetup(
      { 
       cache: false, 
       beforeSend: function() { 
        $('#liveracingblog').hide(); 
        $('#loading').show(); 
       }, 
       complete: function() { 
        $('#loading').hide(); 
        $('#liveracingblog').show(); 
       }, 
       success: function() { 
        $('#loading').hide(); 
        $('#liveracingblog').show(); 
       } 
      }); 

此外,我注意到一個巨大的記錄量被拉出數據庫每隔30秒,而且由於你正在使用load()方法,任何向下滾動的用戶都會返回到這個div的頂部。我會建議使用忘記隱藏divs。相反,用$ get替換load()以返回任何新記錄(自上次請求以來),然後將這些新記錄添加到#liveracingblog div中。

無論哪種方式,祝你好運,讓我知道你是否想要更多的澄清。 Adrian