html - 双语网站中的html标题
问题描述
基于这篇文章中的代码,并感谢我在另一篇文章中获得的帮助,我设法在一个 html 网站中使用了两种语言;这是我在导航栏中用来选择语言的代码:
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" id="dropdown06" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<span lang="es">Idioma</span>
<span lang="en">Language</span>
</a>
<div class="dropdown-menu" aria-labelledby="dropdown06">
<a class="dropdown-item coll-navbar language">
<span lang="es">English</span>
<span lang="en">Español</span>
</a>
</div>
</li>
这是 jQuery 代码:
var lang = localStorage.getItem("lang");
if (lang) {
if (lang == "en") {
$('[lang="en"]').show();
$('[lang="es"]').hide();
} else {
$('[lang="es"]').show();
$('[lang="en"]').hide();
}
} else {
$('[lang="en"]').hide();
localStorage.setItem('lang', 'es');
};
$('.language').click(function() {
$('[lang="es"]').toggle();
$('[lang="en"]').toggle();
if (lang === 'en') {
localStorage.setItem('lang', 'es');
} else {
localStorage.setItem('lang', 'en');
}
});
最后,这是代码工作:
<div class="title col-12 col-md-8">
<h2 class="align-center" lang="es"><strong>
Costura</strong></h2>
<h2 class="align-center" lang="en"><strong>
Sewing</strong></h2>
</div>
该站点以西班牙语开头,如果选择了英语,则下次从同一浏览器访问该站点时,它将以英语开头(它将以最后选择的语言开头)。
我想更改标题中的语言以及正文中的文本,并且按照本文中的建议,我已经尝试document.title = "new title"
在 jQuery 位内部使用,但由于某种原因,标题保持不变,只是更改了一次然后在会话的其余部分保持不变。提前致谢,
解决方案
为什么不简单地使用 CSS?
html [lang] { display: none; }
html[lang=en] [lang=en] { display: initial; }
html[lang=es] [lang=es] { display: initial; }
推荐阅读
- python - 我如何从 dict 值和元组列表中获取每个元素并从中生成一个元组
- python - 为什么这个查找无序列表的最小值和最大值的函数在某些情况下不起作用?
- version-control - VCS 窗口中缺少“忽略”选项
- angular-material-stepper - 如何在单击“下一步”时拨打电话并决定是否继续使用 CDKStepper?
- python - 在列中搜索 str 并创建新的项目列表
- ruby-on-rails - 如何根据数据库中的记录创建具有最少位数的 url 链接缩短 slug
- python-3.x - 从列表中删除一定百分比的元素,同时保留列表的结构完整性
- ant - ant如何检查驱动器D是否存在
- python - 在熊猫中编写文件比较
- c - **(x+i) 和 *(*x+i) 之间的区别