Post view

向BoonEx回報兩個Dolphin 7.1.4的歷史小Bug

最近我向BoonEx回報兩個關於Dolphin 7.1.4的小Bug,但這兩個Bug,其實是早在Dolphin 7.0.9以前就有,一直都沒有被修正過!

我猜想下一個Dolphin 7.1.5版本應該會修正這兩個雖然不是很重要,不會影響系統的正常運作,但卻是「主要的錯誤」。

底下的錯誤追蹤報告網頁,雖然內容是由我回報,但卻是BoonEx站方人員公告出來的。


#3354 (Forum: double doctype declaration and wrong html lang attribute) – BoonEx Trac

  1. In the source code of the forum, header declarations repeated twice. like this:

​http://www.boonex.com/forums/topic/Forum-javascript-errors.htm

I did notice that the forum home page has two DOCTYPE declarations... I wonder if this could be causing any javascript issues?
<!DOCTYPE html PUBLIC "-W3CDTD XHTML 1.0 TransitionalEN" "​http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!DOCTYPE html PUBLIC "-W3CDTD XHTML 1.0 TransitionalEN" "​http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="​http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<head>

  1. In All Web Page HTML source code declarations use <lang="en-US">, like this:

<html xmlns="​http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">

It can't with the browser languages automatically switch the HTML languages. for example, I use Japanese version of browser, It should be automatically changed to japan, like this:

<html xmlns="​http://www.w3.org/1999/xhtml" xml:lang="ja-jp" lang="ja-jp">

Google Chrome will be based on this HTML language to decide whether or not to provide automatic translation of the page.


關於第一個Bug

這兩個錯誤的意思是,從2010年有人發現這個問題,直到目前的Dolphin 7.1.4版本為止,只要開啟「討論區」的版面:

https://www.insoler.com/forum/

再檢視原始碼的話... 就會看到重複宣告了兩次的HTML文件類型原始碼!就像底下這樣:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">

<head>

這個問題不會出現在其他版面,只會出現在「討論區」的版面,而BoonEx站方人員多年來一直沒有發現這個問題,也沒有人正式向BoonEx站方人員回報,只有在上面提到的討論中提出來討論而已!但是BoonEx站方人員不可能閱讀所有的討論,也因此一直都沒有向BoonEx站方通報過這個小Bug!

關於第二個Bug

第二個問題是關於上面的這一行「XML網頁語系」的宣告方式。目前的Dolphin 7.1.4版本,無論你是使用哪一種語系,永遠固定在「lang="en-US" lang="en-US"」:

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">

但其實Google Chrome瀏覽器會根據這一行宣告來決定這個網頁的語系是不是跟你使用的瀏覽器語系一致?比方說你使用的瀏覽器語系是「繁體中文」,當開啟的網頁語系卻是「英語」或是「日語」等其他語系的時候,就會主動提醒你要不要翻譯這個網頁?

由於Dolphin 7.1.4版本的網頁語系宣告永遠是「lang="en-US" lang="en-US"」就算你看到的網頁內容已經是「繁體中文」但Google Chrome瀏覽器卻認為你正在瀏覽英文網頁,反而會不斷的問你要不要把網頁翻譯成跟你瀏覽器相同的「繁體中文」!反而增加了不便!

其實解決辦法很簡單,只要Dolphin 7.1.5或是以後的版本,可以根據使用者選擇的語系(當然,insoler網站上也有這種變更網站語系的功能)自動改變「lang="en-US" lang="en-US"」的宣告方式,就不會讓Google Chrome瀏覽器誤判「瀏覽器語系」與「網頁內容語系」不一致了。

雖然我也有能力自己修正這兩個Bug,但這是BoonEx站方應該要修正的問題,希望站方能更正錯誤,這樣我就不用每次更新Dolphin版本時,還要再次自己動手修正這兩個Bug。

蘇言霖 2014/01/21 0 1929
Comments
Order by: 
Per page:
 
  • There are no comments yet
Rate
0 votes
Post info
蘇言霖
「超級懶貓級」社群網站站長
2014/01/21 (3910 days ago)
Actions