2010-11-24 39 views
1

我正在設計一個網站,將依靠iFrames來顯示第三方內容。鑑於此,我有兩個問題。iFrames和編碼

  1. 此第三方內容可能會有不同的編碼。
  2. 幾乎沒有人定義html文件的編碼。

好了,在這種情況下,瀏覽器將嘗試infeer編碼但我的測試顯示它不需額外infeer每個iframe的編碼sepparatly,因此,一些IFRAME將有it's內容搞砸了。

要重現創建下列文件:

的index.html(UTF-8編碼)

<html> 
    <iframe src="utf.html"> </iframe> 
    ááá 
    <br /> 
    <iframe src="iso.html"> </iframe> 
</html> 

utf.html(編碼UTF-8)

<html> 
    ááááéééé 
</html> 

iso.html (編碼ISO-8859-1)

<html> 
    ááééíí 
</html> 

對。如果你看到結果不完美。

如果我在元標記中正確添加編碼信息,它將起作用。

請記住,我不能更改第三方內容。所以,總而言之,問題在於。在我的例子中,有沒有辦法讓它顯示所有字符正確編輯index.html?

謝謝

+0

非常有可能您需要使用任何服務器端語言解析內容才能做到這一點。 – yoda 2010-11-24 19:45:54

回答

2

有沒有辦法做這個客戶端。由於跨域安全策略,瀏覽器將阻止此操作。您需要通過服務器代理頁面並修改輸出。

+0

或者,也可以將字符集放入響應的HTTP標頭中,而不是修改內容。 – 2010-11-24 23:04:27