2011-08-24 55 views
0

我有一種情況,我想要在瀏覽器中加載不同的網頁,URL將通過web-sockets傳遞。
現在的問題是,如果在連接到套接字服務器的一個html頁面內,它接收到重定向到另一個url的命令,則套接字連接將丟失,並且除非它具有此套接字功能,否則不可能用於新頁面內置於其中。
其中一個想法是使用帶inlineFrame的主頁面,當主頁面保持連接到套接字服務器時,我一直在更改頁面。
我想知道,是否有更高效的方式來做這個任務,我應該通過套接字接收url命令,但想法是爲了避免iFrames?使用HTML5 Websockts在主HTML頁面中加載不同的HTML頁面

回答

1

這聽起來像你的主頁是像一個網頁瀏覽器。它會得到一個新的URL,然後根據它加載一個真實的頁面。您需要維護狀態並控制哪個頁面正在加載,維護WebSockets狀態的唯一方法是保持該頁面打開並建立連接。

我可以看到的唯一解決方案是您建議的IFRAME。

+0

感謝,唯一的問題iFrame是遊標。我有一個用於大屏幕輸出的自定義光標,我沒有訪問iFrame代碼來將光標代碼嵌入到那裏。如果我添加一個透明的div層,那麼我不能點擊Iframe中的元素。似乎沒有辦法解決這個問題。 – Johnydep

+0

由於您不'擁有'IFRAME的內容,我認爲您說對於光標問題/需求沒有解決方案。 – leggetter

1

好問題! 我也在想這個。 要解決所有環節做一些事情上的服務器或客戶端 循環這個(代碼是粗略的,但它的想法是正確的): DOMObj =您的數據對象與頁面內容

i=0 
linkArray[i] = DOMObj.getElementsByTag('a').firstChild[i] 
DOMObj.getElementsByTag('a').firstChild[i].href = "href='serverLoad(linkArray[i])'"