2010-11-30 236 views
2

嗨 我想知道如何使頁面重新加載異步,例如,如果有人收到一條消息,最後一條消息將不會刷新頁面。就像Facebook一樣。謝謝。頁面自動刷新而不刷新

回答

5

你將不得不使用類似jQuery &的Javascript來輪詢服務器的更改並將它們顯示在div中的頁面上。

setInterval('someFunc()', 1000) 

function someFunc() 
{ 

$.ajax({ 
      async: true, 
      type: "GET", 
      url: "www.domain.com/url", 
      data: data, 
      success: function (html) { 
       $("#myDiv").html(html);     
      } 
     }); 

} 

這將更新與ID myDiv在div每秒從www.domain.com/url傳遞數據數據是一個參數(你將不得不定義「數據」)

+0

謝謝!這很有用。 – SmootQ 2010-12-06 15:47:52

1

也有很多的方法 但基本是,你調用一個Ajax功能,每秒或使 檢查與外部PHP/ASP或任何文件,如果任何改變已到您的 數據庫/文提出,如果這樣 追加到聊天室。

p.s.使用庫如jquery簡化了很多事情

+0

感謝您的回覆 – SmootQ 2010-12-06 15:48:43

1

或者你可以使用Comet模型,它不會給網絡造成太多壓力,也不會太多地填充web服務器的訪問日誌。答覆也更快。 Commet意味着HTTP服務器在出現時立即將數據推送給您。