2014-02-16 69 views
1

http://fc.wx198.cn/ideaidev/wxsite/14/index.htmliframe on Android瀏覽器問題

我有這個網頁在Android上運行。

我的手機是Nexus 4 & Android 4.4。

該網頁完全可以與我的手機和iphone瀏覽器。

但是當我的同事打開該網頁上自己的手機(Android的4.1/4.2等)

所有Android手機該版本低於4.4。

你可以看到那個頁面有一個iframe。該iframe沒有顯示!

我只是不明白爲什麼。請幫助。

+0

我測試過我的電腦和手機上的鏈接。 Iframe完全可見。手機運行android 2.3/ – nekavally

+0

可以測試android 4.1/4.2嗎? – Joe

+0

對於真實的,在使用4.1.2平板電腦時無法看到iframe。嘗試爲iframe設置背景顏色以查看,如果它完全消失或只是頁面不加載。 – nekavally

回答

4

我已經做了一些搜索,似乎Android 4.1/4.2不包括iframe標籤在內置瀏覽器中的支持。你可以使用javascript和XMLHttpRequest來克服這個障礙。

爲您創建容器「iframe」文檔,然後發出請求並將響應放入此容器中。不幸的是,XMLHttpRequest只能加載同一個域中的頁面。

假設你有ID my-iframe在HTML DIV,js代碼加載的example.com/frame.html內容可能是這樣的:

var r = new XMLHttpRequest(); 
r.addEventListener("load", function(){ 
    document.getElementById("my-iframe").innerHTML = this.responseText; 
}); 
r.open("get", "example.com/frame.html", true); 
r.send(); 

編輯:固定的語法

+2

這是一個非常有趣的解決方案。在Phonegap中,XHR可以訪問的頁面沒有限制,因此它可以用作iframe替換。只要注意跨站點腳本! –

+0

絕對是一個有趣的方法。我只是因爲這是一個很酷的概念而爲你+1。如果你正在加載的iframe是一個html5視頻,不要認爲它會很好地發揮,但正常的html內容應該加載正常。 – skidadon