javascript - 使用超链接后如何显示相同 id 的 tabcontent?
问题描述
我已将我的网站翻译成多种语言。每一页的翻译都是div
同一个id
。要显示的语言由 Javascript(参见代码)通过按钮选择。
我已经尝试实现 cookie,但失败了(不再显示任何内容)。现在我想将所选语言保存为 cookie,以便在使用指向我网站另一个页面的链接后立即显示相同的语言。
// Declare all variables
var i, tabcontent, tablinks;
// Get all elements with class="tabcontent" and hide them
tabcontent = document.getElementsByClassName("tabcontent");
for (i = 0; i < tabcontent.length; i++) {
tabcontent[i].style.display = "none";
}
// Get all elements with class="tablinks" and remove the class "active"
tablinks = document.getElementsByClassName("tablinks");
for (i = 0; i < tablinks.length; i++) {
tablinks[i].className = tablinks[i].className.replace(" active", "");
}
// Show the current tab, and add an "active" class to the button that opened the tab
document.getElementById(langName).style.display = "block";
evt.currentTarget.className += " active";
}
document.getElementById("index").click();```
解决方案
您也可以使用localStorage来实现这一点。
例子:
// getting the current language with English as a fallback
var language = window.localStorage.getItem('lang') || 'en'
// ... your code for setting the language ...
// setting the selected language
window.localStorage.setItem('lang', language)
推荐阅读
- python - 为什么通过argparse读取数据时我的json字符串数据丢失如$match,$group
- python - 从while循环中间循环的方式
- scala - 使用 Scala 从 List[Row] 中获取 Json Key 值
- java - 我应该如何实施 SSL?
- ruby-on-rails - 在更新记录栏时添加关联记录
- java - Springboot - 如何使用 manifest.yml 从本地类路径访问 cacerts 文件
- javascript - 提取对象数组中未知键的值
- java - 黄瓜自动测试无法通过詹金斯找到元素
- python - Openpyxl 观察工作表的 max_row?
- sql-server - 是否可以遍历 tsql 中的数字列表?