.getElementById('').getElementByte('').style

.getElementById('').getElementById('').style doesnt work

本文关键字:style getElementByte getElementById      更新时间:2023-09-26

Javascript

document.getElementById('menu').getElementById('line1').style.opacity = "0";

HTML

<a href = "#"><div id = "menu" onclick="menu()">
            <div id = "line1">1</div>
            <div id = "line2">1</div>
            <div id = "line3">1</div>
        </div></a>

所以我试图让第一行消失,但由于某种原因它没有运行我的语法有问题吗我之所以有额外的.getElementById('menu'(,是因为我有div id="menuClose"要返回到原始状态。除非有别的办法?

为什么要先选择菜单?您可以直接选择该行,因为它由id:标识

document.getElementById('line1').style.opacity = "0";

Js在这里出价。

如果您想更改另一个div中包含的所有div(在您的情况下,使用id="menu"更改该div中的所有div(,请使用document.getElementById('menu').childNodes,然后如本SO post 所示进行迭代

document.getElementById('line1').style.opacity = "0";

这就是您所需要做的。line1是一个id,因此可以使用getElementById检索它,而无需访问父元素。

请尝试

document.getElementById('line1').style.display='none';

这很简单,因为你首先选择菜单,但你可以尝试这种方法

document.getElementById('line1').style.display='none';

也许这有帮助,