<div id="menuItems">
<a href="#"><img src="package.svg" alt="Склад"><span> Склад<span></a>
<a href="#"><img src="report.svg" alt="Склад"><span> Отчеты</span></a>
<a href="#"><img src="worker.svg" alt="Склад"><span> Персонал</span></a>
</div>
var menuText = document.getElementById("menuItems").getElementsByTagName("a");
for(var i in menuText){
var element = menuText[i];
var text = element.getElementsByTagName("span")[0];
text.style.display = isMenuShort ? "none" : "inline";
}
元素不是列表。我做错了什么?
我的帖子
答案 0 :(得分:1)
使用
String sql = "INSERT INTO data (username, UUID, tenant_id, site_id)" + "VALUES(?, ?, ?, ?)" + "ON DUPLICATE KEY UPDATE" + " UUID = VALUES(UUID), tenant_id = VALUES(tenant_id), site_id = VALUES(site_id)";
代替for-in
循环来迭代for-loop
或类似数组的集合。
array
循环迭代枚举属性 -
因此循环正在迭代for-in
次6
除getElementsByTagName
以外的menuText
0, 1, 2
。
另请参阅"Why is using “for…in” with array iteration a bad idea?"
undefined
&#13;
var menuText = document.getElementById("menuItems").getElementsByTagName("a");
for (var i = 0; i < menuText.length; i++) {
var element = menuText[i];
var text = element.getElementsByTagName("span")[0];
console.log(text);
}
&#13;