2010-09-20 82 views
7

我想訪問用戶瀏覽器設置並更改瀏覽器語言,是否可以使用Javascript?如何使用Javascript更改瀏覽器語言

如果可能,我該如何訪問它? (請示例代碼)

+0

爲什麼要更改瀏覽器語言? – Lekensteyn 2010-09-20 17:52:49

+0

我想在java中使用資源包。 – ammar 2010-09-20 17:55:48

+0

具有資源包功能,瀏覽器可以從瀏覽器語言中自動選擇語言。所以在編輯瀏覽器語言時,我可以創建一個多語言網站 – ammar 2010-09-20 17:57:18

回答

1

這絕對不可能在網頁上使用JavaScript。

瀏覽器擴展可能需要改變這種權利 - 我不知道,這也將取決於瀏覽器。但是,建立這樣的擴展需要相當的技巧和工作。

5

不,這是不可能的。如果你打開一個頁面,並且你的瀏覽器變成了阿拉伯文(或者其他一些你無法閱讀的語言),你會如何找到它?

+0

)如果發生這種情況,我會發現這非常棒,因爲它意味着已經實現不可能。 – 2011-01-12 21:02:23

+0

我很擔心並且想知道哪個漏洞被濫用了。 – Lekensteyn 2011-01-12 21:05:06

+0

您正在考慮使用網頁而不是網頁如果你打開一個網絡應用程序,並且你的(阿拉伯語)瀏覽器顯示阿拉伯語,而你的網絡應用程序用戶配置文件是英文,你將如何找到它? – 2015-02-12 12:26:30

4

這是不可能的,也是一個壞主意。一個更好的主意是檢測瀏覽器的語言,這可以做得相當好,並要求用戶改變它(假設這種改變是絕對必要的)。

+0

這不是用戶友好的。 – ammar 2010-09-20 18:11:38

+4

也不會改變用戶的瀏覽器語言 – 2010-09-20 18:15:42

+1

@Andrew Dunn,@ammar,只有這樣纔是用戶友好的:用戶需要的一切都必須從用戶的大腦中採集納入血液中的納米機器,這些納米機器與無線連接到具有良好AI的服務器的血液中,這也可以預測用戶的期望,費用可能適用,這可能違反您的司法管轄區的法律。 – 2011-01-12 21:01:24

4

您可以檢測到,但無法設置。

var lang = navigator.language || navigator.userLanguage; 

// navigator.language  : Netscape & Firefox 
// navigator.userLanguage : Internet Explorer 


如果你想輸出不同的語言,最好的辦法是做服務器端。或者:

  • 使用AJAX調用動態加載相應的頁面
  • 使用一個會話變量來加載初始頁面正確
2

如果你真正想要做的是檢測語言的用戶正在使用,這是你想要做的,因爲沒有什麼會讓你的訪問者煩惱他們的瀏覽器首選項被改變,在服務器端,閱讀所有現代瀏覽器發送的HTTP請求頭文件Accept-Language,它應該包含你的所有信息需要。如果不存在,則假定您的最大受衆羣體的語言。

退房RFC2616 Section 14.4Accept-Language更多的信息和它的使用。

相關問題