Javascript 一次调用数组中的多个元素?

Javascript 一次调用数组中的多个元素?,javascript,html,css,Javascript,Html,Css,这是我需要练习的情况。现在,我只是刚刚开始使用Javascript。我正在我的控制台里练习,我碰到了一堵墙,我需要弄清楚 我想做的只是在我的chrome控制台中简单地更改CSS样式。这是我到目前为止所拥有的 var get = document.getElementById('ul-li-menu'); 然后在我调用的变量中,我得到了li的uls和垂直菜单锚的完整列表 我通过下面的代码访问我想要的锚定标签 var li = get.getElementsByTagName('a'); 现在我

这是我需要练习的情况。现在,我只是刚刚开始使用Javascript。我正在我的控制台里练习,我碰到了一堵墙,我需要弄清楚

我想做的只是在我的chrome控制台中简单地更改CSS样式。这是我到目前为止所拥有的

var get = document.getElementById('ul-li-menu');
然后在我调用的变量中,我得到了li的uls和垂直菜单锚的完整列表

我通过下面的代码访问我想要的锚定标签

var li = get.getElementsByTagName('a');
现在我有一个完整的数组,我知道我只需要像这样在控制台中调用变量

li
这就是我困惑的地方。为了练习,我想更改所有这些锚定标记的显示

这是我最初写的代码

li.style.display = "inline";
但这不起作用

我不想使用[0]或[3]这样的括号符号访问此数组中的每个元素

这个数组中大约有13个锚元素,我想一次访问所有这些元素,以将显示更改为内联。有没有办法做到这一点


先谢谢你们,伙计们

没有JQuery,您需要遍历数组中的每个对象

没有JQuery,您需要遍历数组中的每个对象

只需遍历for循环即可

for(var i = 0; i < li.length; i++){
    li[i].style.display = "inline";
}
for(变量i=0;i
只需通过for循环即可

for(var i = 0; i < li.length; i++){
    li[i].style.display = "inline";
}
for(变量i=0;i
我建议您使用JQuery以实现更快的方法:

$(“按钮”)。单击(函数(){
如果($((“li”).css(“显示”)=“表格”){
$(“li”).css(“显示”、“内联块”);
}
否则{
$(“li”).css(“显示”、“表格”);
}
});
li{
显示:表格;
}

  • 0
  • 一,
  • 二,
  • 三,
  • 四,
  • 五,

更改样式
我建议您使用JQuery以实现更快的方法:

$(“按钮”)。单击(函数(){
如果($((“li”).css(“显示”)=“表格”){
$(“li”).css(“显示”、“内联块”);
}
否则{
$(“li”).css(“显示”、“表格”);
}
});
li{
显示:表格;
}

  • 0
  • 一,
  • 二,
  • 三,
  • 四,
  • 五,

更改样式
您需要在它们之间循环并分别设置。如果您使用的是jQuery或es6,您可以用一种更简洁的方式来实现这一点,但下面是使用普通的ol'javascript的方法

var listItems = document.getElementById('theUlElement').getElementsByTagName('li');

for (var li = 0; li < listItems.length; li ++){
  listItems[li].style.display = "inline";
}
var listItems=document.getElementById('theuleElement').getElementsByTagName('li');
对于(var li=0;li
您需要在它们之间循环并分别设置。如果您使用的是jQuery或es6,您可以用一种更简洁的方式来实现这一点,但下面是使用普通的ol'javascript的方法

var listItems = document.getElementById('theUlElement').getElementsByTagName('li');

for (var li = 0; li < listItems.length; li ++){
  listItems[li].style.display = "inline";
}
var listItems=document.getElementById('theuleElement').getElementsByTagName('li');
对于(var li=0;li
您可以在锚定标记的数量上使用Javascript动态添加自定义CSS样式规则

//语法 //addRule(规则,索引);
您可以在锚定标记的数量上使用Javascript动态添加自定义CSS样式规则

//语法 //addRule(规则,索引);
对数组的每个元素执行相同操作的另一个有用选项是。不幸的是,您的变量
li
不是数组,而是
节点列表
,用于
forEach

也就是说,您实际上可以在节点列表上使用数组版本的
forEach
,而不需要任何麻烦!这将在IE9+上起作用:

[].forEach.call(li,函数(项){
item.style.display='inline';
});
//Array.prototype.forEach.call(…)也可以工作。
如果您不关心浏览器支持,那么可以使用NodeList native
forEach

li.forEach(功能(项){
item.style.display='inline';
});

对数组的每个元素执行相同操作的另一个有用选项是。不幸的是,您的变量
li
不是数组,而是
节点列表
,用于
forEach

也就是说,您实际上可以在节点列表上使用数组版本的
forEach
,而不需要任何麻烦!这将在IE9+上起作用:

[].forEach.call(li,函数(项){
item.style.display='inline';
});
//Array.prototype.forEach.call(…)也可以工作。
如果您不关心浏览器支持,那么可以使用NodeList native
forEach

li.forEach(功能(项){
item.style.display='inline';
});

与使用jQuery不同,您需要循环遍历每个项目并直接将样式应用于它们
li.forEach(item=>{item.style.display=“inline”;})
与使用jQuery不同,您需要循环遍历每个项目并直接将样式应用于它们
li.forEach(item=>{item.style.display=“inline”;})