IE瀏覽器似乎有一個知道的問題,它不會響應具有#號的網址。 例如:https://mootools.lighthouseapp.com/projects/2706/tickets/638-request-fails-when-url-has-hash-in-ie7帶#的GWT網址不適用於IE7
由於我們在基於GWT的應用程序中經常使用#,我們缺乏對想要瀏覽該站點的IE7用戶的支持。
除了修改URL之外,是否有任何已知的用於GWT的解決方法?
IE瀏覽器似乎有一個知道的問題,它不會響應具有#號的網址。 例如:https://mootools.lighthouseapp.com/projects/2706/tickets/638-request-fails-when-url-has-hash-in-ie7帶#的GWT網址不適用於IE7
由於我們在基於GWT的應用程序中經常使用#,我們缺乏對想要瀏覽該站點的IE7用戶的支持。
除了修改URL之外,是否有任何已知的用於GWT的解決方法?
我想我終於明白了問題所在。 我們的GWT應用程序是爲坐在一個iframe內的另一個HTML文件,設置GWT的歷史支持
<iframe src="javascript:''" id="__gwt_historyFrame" tabIndex='-1' style="position:absolute;width:0;height:0;border:0"></iframe>
在外部HTML而不是GWT一個工作要做。 這個gwt腳本是爲了支持沒有實現onhashchange事件的瀏覽器,如IE6和IE7。
歷史完美地工作以及在我們所有的IE版本GWT應用程序...
這票是關於XMLHttpRequest的,所以在你的XMLHttpRequest不使用哈希。它與GWT無關。
首先,提供的鏈接中描述的問題與您使用XMLHttpRequest查詢的URL相關。在GWT應用程序中#可以出現在普通的GET請求中(當你打開頁面時,就是當你開始你的GWT應用程序時)。當GWT做的XMLHttpRequest請求時,它使用了類似的網址:
http://yourserver.com/context/com.yourcompany.SomeModule/someService
這裏面沒有#,所以如果你有任何問題,他們沒有這個問題有關。
我同意這就是爲什麼我用ajax標記它,但因爲我們正在使用GWT,我認爲可能有一個解決方法,GWT可以提供除修改URL之外。這是否意味着你不在你的GWT應用中使用「#」? – Joly 2011-04-13 18:02:34
如果您在網址中沒有使用「#」,那麼您如何讓自己的網站符合Google的Ajax抓取方案,以便在需要#時抓取它!在網址中? http://code.google.com/web/ajaxcrawling/docs/getting-started.html。此外,Facebook等網站似乎在他們的網址中有#號,並且它似乎在IE7 – Joly 2011-04-13 18:06:23
下工作當您在瀏覽器中鍵入URL時,URL中的「位置」部分(#後面的部分)不會傳遞到服務器。位置(或散列,如果你喜歡的話)嚴格用於客戶端。您的服務器不應該在請求URL中接受#。這就是爲什麼你沒有理由將它與XmlHttpRequest一起傳遞。如果您想傳遞一些參數,請使用常規查詢字符串,如下所示:?param1 = value1&... – 2011-04-19 15:56:31