2013-02-13 141 views
9

我正在管理頁面上創建博客文章。我有一個法文textarea和一個英文textarea。因此,對於那些誰不能有自己的翻譯,我創建了一個按鈕,「與谷歌翻譯」:谷歌翻譯 - 禁用翻譯我的文本的一部分

<a id="tr_textefr" href="http://translate.google.fr/#fr/en/" target="_blank"> 
Traduire avec Google</a> 

而且我的法語文本區域有一個叫javascript函數的onkeyup:

function translate(what){ 
var button = "tr_" + what; 
var textarea = document.getElementById(what); 
var google = "http://translate.google.fr/#fr/en/" + textarea.value; 

document.getElementById(button).setAttribute('href', google); 
} 

對於爲例,如果我寫了「Voulez-vous coucher avec moi ce soir?」,它會改變「​​coucher avec moi ce soir?」的href屬性。該鏈接將重定向到我的文本的翻譯版本(通過谷歌翻譯)。

此代碼可以正常工作。問題是我有時可能在我的文本里面有bbcode:「Voulez-vous [b] coucher [/ b] avec moi ce soir?」)。

那麼,有沒有一種方法與谷歌翻譯禁用翻譯的一些單詞或句子?例如,我不想翻譯兩個@之間的詞:「Voulez-vous @ [b] @coucher @ [/ b] @ avec moi ce soir?」從翻譯字符串的

回答

14

保護部件可以通過與特定的類值包裹他們在一個<span>標記(如所解釋here):

<span class="notranslate">[bold]</span> 

實施例:http://goo.gl/9JkhA

另外,谷歌翻譯API如果您不介意支付少量費用(每1M字符20美元),將爲您提供更大的靈活性。

+1

我找不到說的靈活性,但''招作品。如果你能夠在沒有標記的情況下獲得翻譯後的文本,那將會很好。 – theblang 2015-12-15 22:24:03

+1

似乎只有當您支付少量費用時纔可以使用Google Translate API。你能解釋一下API改進後的解決方案嗎? – Adam 2017-05-29 10:06:06