2012-01-02 63 views
3

我正在編寫多房間聊天服務器以學習nodejs。無法打開的頁面刷新在socket.io消息後觸發

的代碼是在這裏:https://github.com/DanielHeath/furious-earth-2/tree/backbone 和應用程序是住在這裏:http://furious-earth.herokuapp.com/

的問題是,在開發模式下運行時,只要您登錄到一個房間裏的頁面刷新。

我到目前爲止已經發現:

  • 這不會在生產發生
  • 任何你寫到控制檯時丟失的頁面重新加載
  • 鉻調試器崩潰,如果標籤你使用它與socket.io代碼
  • Firefox的調試器不會停止頁面重新加載
  • 該網址得到'?'附加參數

我不明白是什麼導致它 - 甚至如何調試它。

有什麼想法?

+1

如果您將代碼中您懷疑與問題有關的部分摘錄出來,這將有很大幫助;可能是觸發socket.io操作的客戶端代碼。導致意外頁面刷新的一個常見原因是,導致頁面自然刷新的元素的事件處理程序(''表單提交元素的標記)不能正確地阻止默認操作 – Pointy 2012-01-02 00:50:57

+1

謝謝 - 表單提交是在執行此操作。想要重新提交您的評論作爲答案,以便我可以接受它? – 2012-01-02 09:24:50

+0

好的將會 - 很高興我猜對了:-) – Pointy 2012-01-02 13:28:14

回答

1

一件事是尋找:在你的網頁勢必<a>元素或事情,引起表單提交(<button>標籤,類型爲「提交」,或「提交」 <input>元素和其他類似的東西的事件處理程序)。如果這些不能正確地阻止「點擊」事件的默認操作,則瀏覽器將最終重新加載頁面。

相關問題