我有一个聊天框,我正在制作一个块功能。我几乎已经得到了代码,但它不起作用(Java 不是我的语言)。我有这个属性,我可以让它消失,但我不能递归地做。在许多情况下,代码完全停止工作。<table><td userclass="" username="cat">cat</td><td userclass="" username="hampster">hamster</td><td userclass="" username="dog">dog</td></table><p id="message"></p><script> var x = document.getElementsByTagName("td"); var i; for (i = 0; i < x.length; i++) { var btn = document.getElementsByTagName("td")[i]; var x = btn.attributes[1].value; if (x="hamster") { document.getElementsByTagName("td")[i].style.visibility = "hidden"; }else{ document.getElementsByTagName("td")[i].style.visibility = "visible";} }</script>在我包含“For”循环之前成功发生错误通常根本不做任何事情
1 回答
慕妹3146593
TA贡献1820条经验 获得超9个赞
var在全局范围内定义一个变量。您正在使用它来存储<td>属性列表和属性值。首先尝试使用不同的变量名称:
var myTds = document.getElementsByTagName("td");
var i;
for (i = 0; i < myTds.length; i++) {
var btn = myTds[i];
var x = btn.attributes[1].value;
if (x=="hamster") {
myTds[i].style.visibility = "hidden";
} else {
myTds[i].style.visibility = "visible";
}
}
另请注意:
1) 你应该==用于比较;
2)您不需要使用document.getElementsByTagName("td").
3)在您的 HTML 中更改username="hampster"为username="hamster"以查看示例工作。
添加回答
举报
0/150
提交
取消