javascript - 多语言与 HTML CSS 和 Javascript | 我究竟做错了什么?
问题描述
我想让这个简单的页面只提供两种语言。德语和英语。但这似乎不起作用。
这是HTML代码。
<p>
<a href="#eng" data-reload>English</a>
<a href="#de" data-reload>Deutsch</a>
</p>
<div>
<h1 class="title-1">Yannick</h1>
</div>
<details open class="title-1">
<summary style="outline: none;" class="hi">About Me</summary>
</details>
这是 JavaScript 代码。
var dataReload = document.querySelectorAll("[data-reload]");
var language = {
eng: {
welcome: "About me"
},
de: {
welcome: "Ãœber mich"
}
};
// define language via window hash
if (window.location.hash) {
if (window.location.hash === "#de") {
hi.textContent = language.de.welcome;
}
}
for (i = 0; i <= dataReload.length; i++) {
dataReload[i].onclick = function() {
location.reload(true);
}
}
我收到此错误(控制台):
Uncaught TypeError: Cannot set property 'onclick' of undefined
at lang.js:20
(anonymous) @ lang.js:20
我究竟做错了什么?请让我们一起寻找解决方案。
解决方案
推荐阅读
- python - 执行二进制搜索时列出索引超出范围错误
- java - 在android中显示当前的音乐播放信息
- php - PHP 在数周内显示来自 DB 的数据
- sql - SQL Server 中的 DML 触发器
- android - 图像视图中未显示图标
- python - Tkinter Listbox - 如何禁用箭头键选择?
- mysql - 读取 XML 数据并将它们保存到 symfony 4 中的 mysql 数据库
- haskell - Cabal 似乎无法构建并行运行的可执行文件
- javascript - MozAfterPaint 的非 Mozilla 等价物?
- flutter - 在 ListTile 中打开一个新视图 - Flutter