如何翻译我的网页?实际上,如果需要的话,应该使用什么技术或者什么脚本?仅供参考;我有所有翻译的文本。但是我不想为其他语言创建类似克隆站点的东西。我只使用了javascript -including jquery。
发布于 2011-01-18 06:09:21
只是在使用JavaScript...
<script type="text/javascript">
// JSON-formatted, potentially read from a database
var article = {
title: {
en_US: "Article Title",
fr_FR: "Titre de l\'Article"
},
content: {
en_US: "Content of the Article.",
fr_FR: "Contenu de l\'Article."
}
}
// simple function to write the info to the page
function get_i18n(item, lang) {
document.write(article[item][lang]);
}
</script>
<!-- English Version -->
<div class="story">
<h1 class="title"><script>get_i18n('title','en_US');</script></h1>
<p class="content"><script>get_i18n('content','en_US');</script></p>
</div>
<!-- French Version -->
<div class="story">
<h1 class="title"><script>get_i18n('title','fr_FR');</script></h1>
<p class="content"><script>get_i18n('content','fr_FR');</script></p>
</div>请注意:这不是一个非常优雅的解决方案。我相信有一个更好的方法。
发布于 2011-01-18 04:48:38
你的实际意思是“如何构建多语言网站”,因为你已经有了你所说的“翻译文本”。
一种方法是将文本放入容器中,然后使用客户端代码根据所选语言将容器内容更改为适当的文本,并具有包含每种语言的翻译文本的数组。
如果你有自己的服务器端语言,那就更好了--你有这样的东西吗?
发布于 2011-01-18 06:41:54
使用CSS属性选择器:
<style type="text/css">
// hides all French blocks by default
div.story[lang="fr"] {
display: none;
}
// hide all English blocks
body[lang="fr"] div.story[lang="en"] {
display: none;
}
// show all French blocks
body[lang="fr"] div.story[lang="fr"] {
display: block;
}
</style>
<!-- Change this to the language of the blocks you want to display -->
<body lang="fr">
<!-- English block, shown by default -->
<div class="story" lang="en">
<h1 class="title">Article Title</h1>
<p class="content">Content of the Article.</p>
</div>
<!-- French block, hidden by default -->
<div class="story" lang="fr">
<h1 class="title">Titre de l'Article</h1>
<p class="content">Contenu de l'Article.</p>
</div>
</body>此设置默认显示所有英文块,除非在<body>标签上设置了lang="fr"。
当然,您仍然需要一些方法来修改<body>标记的lang属性……
https://stackoverflow.com/questions/4717475
复制相似问题