function navtoggle(elementRef) { if (document.getElementById('nav').className = 'closed') { document.getElementById('nav').className = 'open' } else if (document.getElementById('nav').className = 'open') { document.getElementById('nav').className = 'closed' }; } 
 .closed { display: none; } .open { display: block; } #navget { width: 100px; height: 100px; box-shadow: 0px 0px 15px black; } 
 <html> <head> <link rel="stylesheet" type="text/css" href="style.css"> <title>HTML Library</title> </head> <body> <div id="nav" class="closed"> <ul> <li><a href="index.html"><h1>HOME</h1></a> </li> </ul> </div> <button onclick="JavaScript: navtoggle(this);" id="navget">NAV</button> </body> </html> 

这是HTML:

<html>
    <head>
        <link rel="stylesheet" type="text/css" href="style.css">
        <title>HTML Library</title>
    </head>
    <body>
        <div id="nav" class="closed">
            <ul>
                <li><a href="index.html"><h1>HOME</h1></a></li>
            </ul>
        </div>
 <button onclick="JavaScript: navtoggle(this);" id="navget">NAV</button>
    </body>
</html>

JS:

function navtoggle(elementRef){
if (document.getElementById('nav').className = 'closed') 
    {document.getElementById('nav').className = 'open'}

else if (document.getElementById('nav').className = 'open')
    {document.getElementById('nav').className = 'closed'};

}

和CSS:

.closed {
    display: none;
}

.open {
    display: block;
}

#navget {
    width: 100px; height: 100px;
}

我知道只使用复选框会更容易,而且我确实知道该怎么做。 但是,我希望它只是一个按钮,这样我才能使其看起来更好。 我对JS很陌生,所以请不要对这个愚蠢的问题太苛刻。 谢谢。

#1楼 票数:0

在条件语句中,您使用“ =”而不是“ ==“

 if (document.getElementById('nav').className == 'closed') {
    document.getElementById('nav').className = 'open'
  } else if (document.getElementById('nav').className == 'open') {
    document.getElementById('nav').className = 'closed'

#2楼 票数:0

您的sintax有几个问题,我在这里为您提供了一个小工具因此您可以看到所有详细信息,但基本上是:

function navtoggle(elementRef){
  if (document.getElementById('nav').className === 'closed')  {
    document.getElementById('nav').className = 'open'
  }
  else if (document.getElementById('nav').className === 'open'){
    document.getElementById('nav').className = 'closed'
  } //You was using semicolon here and that wasn't parsing well
}

我不知道是否也想在标题中添加脚本,但请告诉我它是否有效

  ask by Dr. Owning translate from so

未解决问题?本站智能推荐:

1回复

.splice()我在做什么错

我只是想让.slice()和.splice()适应。 为什么此代码不起作用? 根据w3Schools的说法,.splice()接受3个参数(开始添加/删除元素的索引,要删除的元素数量以及要添加的内容)。 为什么此功能不起作用? PS忽略它们,只是我进行实验的一部分。
1回复

此代码中的if语句在做什么?

此代码遍历数组,以获取数组项的子集,并将某些数字推入result数组。 我只是不知道这if语句如何过滤​​数字: 到底是什么意思?
3回复

if语句转到按钮和div的麻烦

我正在尝试让我的函数查看在文本框中输入的数字,并且如果该数字大于x数字(出于示例目的,我输入5)在Div中显示一条消息,如果小于或等于则显示另一条消息。 现在,我单击该按钮,但没有任何反应。 我是第一次尝试学习Javascript,因此请原谅我的无知-我哪里出错了? 谢谢!!
1回复

将滚动与许多更改相同 div 的 if 语句结合使用

我正在尝试理解 JavaScript,但似乎无法使用if和else if语句正确编写函数。 我想要一个功能,我可以向下滚动页面并且div元素的背景颜色多次更改。 所以,如果我滚动 50 像素,背景是一种颜色,然后我继续滚动直到 300 像素,它变成蓝色,然后我继续滚动直到 600 像素,它变成红色,
6回复

如何使用 if 语句更改按钮单击时的段落内容?

当有人单击三个按钮之一时,尝试在 p 元素内显示不同的消息。 但它只显示所有按钮的第一条消息(回复)。 看不出我做错了什么... HTML JavaScript
4回复

使用 if/else 语句随时间更改对象类

我希望能够确定类依赖于时间的对象-我现在有两个班, recommendedspot和notrecommended 。 我已经尝试了下面的代码,但是图像没有像我想要的那样出现。 下面是我的代码: var time = new Date().getHours(); if (time &
2回复

IF语句不确定我在做什么错

在开始学习PHP / Mysql之前,我会尝试学习并理解所有内容,然后再研究mysqli并研究正确的安全性步骤,因此我知道这段代码会有漏洞。 基本上,我正在实施成员组系统,并且正在尝试制定代码,以便.. 如果成员在组中,则显示“组成员”;如果成员不在组中,则显示“加入组”;如果成员已
3回复

该if语句不起作用-我在做什么错?

我正在尝试检索当前登录用户的访问级别(管理员/成员/来宾),并据此在我的页面上向他们显示特定内容。 我现在正在尝试使用echos对此进行测试,但仍然无法打印出任何内容。 谁能提供任何建议?