Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Javascript将高度更改为div中的所有元素_Javascript_Html_Css - Fatal编程技术网

使用Javascript将高度更改为div中的所有元素

使用Javascript将高度更改为div中的所有元素,javascript,html,css,Javascript,Html,Css,我有一个带有ID的ul标签,点击一个按钮,我就想改变div本身的高度和显示,以及该div内每个a标签的高度和显示 我无法选择每个标签并更改其样式 我只想使用javascript 我的加价 <ul id="mobile_nav" > <a href="about.html" class="images" ><li><p>about me</p></li></a> <a href="wor

我有一个带有ID的ul标签,点击一个按钮,我就想改变div本身的高度和显示,以及该div内每个a标签的高度和显示

我无法选择每个标签并更改其样式

我只想使用javascript

我的加价

 <ul id="mobile_nav" >
     <a href="about.html" class="images" ><li><p>about me</p></li></a>
     <a href="work.html" class="images"><li><p>work</p></li></a>
     <a href="letstalk.html" class="images"><li   ><p>let's talk</p></li></a>
 </ul>

正如您所写的,您可以通过以下方式找到您所关注的所有元素:

var elements = document.getElementById('mobile_nav').getElementsByTagName('a');
上面的结果是
NodeList
。您可以这样遍历它:

for (var i = 0, len = elements.length; i < len; i++){
   elements[i].style.height = "25px";
}
for(变量i=0,len=elements.length;i
您的HTML无效,因此您的DOM将不同于您的HTML所暗示的内容,并且基于该HTML/DOM的任何JavaScript都可能无法工作。
ul
ol
元素中唯一有效的子元素是
li
。所以我不能在
  • 前面加标签,这就是你说的?你不能用
    a
    来包装
    li
    ,这就是我说的。明白了……有道理……我觉得有点不对劲!哈哈,干杯你为什么要用for loop?节点列表不是对象?不能在节点列表上使用foreach函数。要了解更多信息,您可以查看我在执行console.log(typeof(a))时作为对象出现的情况,因此我没有尝试For循环,但它似乎在工作……我很高兴知道原因tho@AlexG_1010100101查看提供的链接。(NodeList是访问DOM元素的基本接口)
    for (var i = 0, len = elements.length; i < len; i++){
       elements[i].style.height = "25px";
    }