有没有办法实现多类Id';在一个javascript函数中是什么?
我在div类主ulli中列出了4个元素。 我想在单击按钮时隐藏这些元素。我用下面的代码进行了尝试,但只有第一个有没有办法实现多类Id';在一个javascript函数中是什么?,javascript,html,css,Javascript,Html,Css,我在div类主ulli中列出了4个元素。 我想在单击按钮时隐藏这些元素。我用下面的代码进行了尝试,但只有第一个元素起作用 功能切换(id){ var e=document.getElementById(id); 如果(e.style.display==“无”){ e、 style.display='block'; }否则{ e、 style.display='none'; } } .main{ 显示:表格; 填充:2×20px; } 李少林议员{ 显示:无; } 一个 两个 三 隐藏您可
元素起作用
功能切换(id){
var e=document.getElementById(id);
如果(e.style.display==“无”){
e、 style.display='block';
}否则{
e、 style.display='none';
}
}
.main{
显示:表格;
填充:2×20px;
}
李少林议员{
显示:无;
}
- 一个
- 两个
- 三
隐藏
您可以使用jquery进行隐藏和显示,如下所示。最初,通过css将display none属性应用于li元素。它将隐藏页面加载时的元素
<div class="main">
<li>one</li>
<li>two</li>
<li>three</li></ul></div>
<button class="btn" onclick="toggle()">hide</button>
.main ul{
display:table;
padding:2px 20px 2px 20px;
}
.main ul li{
display:none;
}
function toggle(id) {
var e = $('ul')
if($('ul').is(":visible"))
{
$('ul').hide();
}
else
{
$('ul').show();
}
}
一个
两个
三个
隐藏
主保险商实验室{
显示:表格;
填充:2×20px 2×20px;
}
李少林议员{
显示:无;
}
功能切换(id){
变量e=$('ul')
如果($('ul')。是(“:可见”))
{
$('ul').hide();
}
其他的
{
$('ul').show();
}
}
香草溶液
li
是一个标记,而不是id。因此,您必须使用例如
var elements=document.getElementsByTagName()
现在您不能直接使用
元素
,因为它是一个元素数组。所以你已经迭代了数组中的每个元素,比如像我一样使用for
循环。然后将当前元素分配给var,在我的例子中是元素
,并像以前一样创建if语句。您的代码将无法工作,因为您在函数中传递的ul没有任何意义,这就是它无法工作的原因
我已经用最简单的方法修改了你的代码
var btn=document.querySelector('button');
var ul=document.querySelector('ul');
btn.onclick=函数(){
ul.classList.toggle('newClass');
}
.newClass{
显示:无;
}
- 一个
- 两个
- 三
隐藏
您确定第一次使用它有效吗?我不明白它怎么能“我想在点击按钮时隐藏这些元素。”它们已经被你的CSS隐藏了。(不,除非您的代码中有一个var li=“one”
,否则它对第一个不起作用。)JQuery$('div.main li')。每个(e=>…)代码>不适用于您?欢迎使用堆栈溢出!请拿着(你得到一个徽章!),四处看看,并通读,特别是我还推荐Jon Skeet的和。你想循环使用id的li元素并在单击时隐藏它们?不要求切换功能,我想只是“隐藏”它们就可以了,先生,但我觉得他正在尝试制作一个可折叠的导航栏,我可能是错的,也可能是错的,因为预期的结果还不是很清楚,我们可以“静坐等待”。