2011-04-01 61 views
1

我有一個小網站(8或10頁),需要翻譯成西班牙文。我無法訪問後端開發人員以使用任何類型的數據庫或變量,因此我將嘗試通過CSS/jQuery完成這一過程。如何處理沒有數據庫或後端代碼的多語言站點?

我知道如何將頁面上的元素從英文更改爲西班牙語,反之亦然。我的問題是,一旦訪問者點擊新頁面,我如何確保下一頁以適當的語言顯示?這甚至有可能嗎?

頁面是.aspx,但我沒有訪問後面的代碼,我在.NET中相對沒用。我甚至不會採取這一點,但它只有幾頁,文字很少。

有人可以幫助我在這裏朝正確的方向走嗎?

回答

3

可以使用cookie來保存所選語言。

我認爲這將工作:

function changeLang(lang) { 
    var a = 0; 
    Set_Cookie('lang',lang, 30, "/"); 
    location.reload(false); 
} 

function Set_Cookie(name, value, expires, path, domain, secure) 
{ 
// set time, it's in milliseconds 
var today = new Date(); 
today.setTime(today.getTime()); 

if (expires) 
{ 
    expires = expires * 60 * 60 * 24; 
} 
var expires_date = new Date(today.getTime() + (expires)); 

document.cookie = name + "=" +escape(value) + 
((expires) ? ";expires=" + expires_date.toGMTString() : "") + 
((path) ? ";path=" + path : "") + 
((domain) ? ";domain=" + domain : "") + 
((secure) ? ";secure" : ""); 
} 
+0

的確,您可以使用cookie ......但如果您正在使用的是前端技術,那麼您必須找到一些地方來存儲所有內容。您可以 - 將內容放入2個div中,並根據cookie進行顯示/隱藏,但是您將發送的內容翻倍 - 並且數據翻倍 - 比您必須的要多。如果你同意這個前提,那麼你回到翻譯或使用後端技術只發送所需的內容。 – bpeterson76 2011-04-01 21:52:34

+0

對不起,延遲迴復。我完全同意你的看法,我只是想弄清楚如何處理它,並想到同樣的事情,我將爲每種語言設置一個div,並根據需要簡單地顯示/隱藏。但它的確不是那麼理想......不幸的是,目前我沒有後端開發人員。我迫切希望我們的公司僱用一個,但他們似乎無法找到一個,他們正在尋找錯誤的地方...... – Stefan 2011-04-04 14:54:21

+0

是否有可能使用上面的腳本重定向到一個子目錄?例如www.mysite.com/sp/?我從來沒有使用過Cookie。 – Stefan 2011-04-04 14:55:52

0

,你可以只用CSS做:

<div class="text-1"></div> 

在你的CSS文件:

.text-1:after { 
    content: "Hello World" 
} 

現在你需要的是每一種語言CSS文件,

在此處查找演示http://jsfiddle.net/CyfBF/1/

+0

嗯,我將不得不咀嚼這一點。網站上沒有很多文字,但將它全部納入CSS可能有點混亂。以及如何使用語言和列表元素的圖像? – Stefan 2011-04-04 14:59:26

+0

在正常情況下,我不會那樣做,但是如果您在非常有限的環境中工作,這可能是一個有用的黑客攻擊 – ezmilhouse 2011-04-04 17:46:47