2013-04-12 59 views
2

我在html5中開發了這個網站。在這裏我有一個語言選擇選項,現在它是英文的。如果我選擇其他語言,那麼它應該以該語言顯示內容。我不想使用Google翻譯器來翻譯內容。我有所有語言的內容。如果HTML5或HTML中的任何標籤或方法獲取並顯示特定於該語言的內容?如何開發網站以在多種語言之間切換?

+0

當你想要選擇一種語言下拉列表時,你需要加載相應的語言html文件。 – Sandeep

+0

你可能想看看[這](http://eligrey.com/blog/post/passive-localization-in-javascript)。 – adrianp

+0

謝謝Sandeep。是否,1)我需要爲每種語言提供不同的html文件? 2)我只需要在不帶html標籤的不同文本文件中包含內容(英文/德文)?這可能是工作邏輯? – user2274193

回答

1

HTML允許您指定與lang屬性工作中的語言,但它沒有提供特定功能的(手動或自動)的翻譯。

+0

感謝您的回覆。那麼如何讓訪問者在他們的選擇之間切換語言?是否需要爲每種語言創建網站? – user2274193

+0

通常會有語言特定和共享代碼的混合。 http://stackoverflow.com/questions/tagged/multilingual是一個有用的出發點。 – Quentin

2

如果你的網站是靜態的,那麼你就可以克隆你的網站對於每一種語言,利用語言的具體內容,並用不同的基本URL訪問每個版本(域/ EN/...域/ ES/....)。

+1

是的,我的頁面是靜態的。但我的網站中有超過50個文件。如果我需要克隆到每種語言,那麼它需要更多的工作和更多的文件。是否有任何工具或插件或JavaScript函數從xml或文本文件中檢索基於語言選擇的內容? – user2274193

2

你需要讓你的網頁翻譯成任何你想要的語言。

複製每種語言您的整個網絡結構,使你最終

www.example.com/en/ .. www.example.com/fr/ ..

通常人們使用標誌來指示語言並重定向到相應的語言頁面。

+0

太感謝你了約翰·d – user2274193

3

您可以使用JavaScript的定位(這是你的標籤之一,所以我想你會使用它)。

你可以做的是一個快速檢查用戶的語言環境,從而與您的內容匹配的本地化填充頁面。

這是一個快速而骯髒的例子。 (注意:這是純粹的動態)

locale = (navigator["language"] || "en").split("-")[0]; 

localization = { 
    "de": "Hallo Benutzer!", 
    "en": "Hey user!" 
}; 

text = localization[locale] || localization["en"]; 

e = document.createElement("span"); 
e.innerHTML = text; 
document.body.appendChild(e); 
+1

注:「.split(‘ - ’)[0]」確保我們得到一個簡單的字符串。用戶的語言環境通常由語言國家指定。也就是說,例如「en-US」或「de-DE」;如果我們只需要指定不依賴於國家/地區的本地化,那我們就很好。 –

+0

除了我恨它時,當我的郵件界面改變爲他在我所在的國家所說的任何語言時,請確保有一個標誌點擊和一個cookie來記住我的選擇 – mplungjan

+1

這不是一個你喜歡什麼的問題 - 如果你想要更多,實現更多。 –