javascript - 将 if/else 语句转换为 switch 语句

标签 javascript

我在http://www.w3schools.com/上找到了一个例子如何创建a responsive navigation bar

该示例包含一些 if/else 语句形式的 JavaScript。我更喜欢使用 switch 语句。

但是,当我单击图标时,我的 switch 语句不起作用,并且没有提供任何错误。

示例的 JS 代码:

    var x = document.getElementById("myTopnav");
    if (x.className === "topnav") {
        x.className += " responsive";
    } else {
        x.className = "topnav";
    }

我的 Switch 声明:

var x = document.getElementById("myTopnav");
switch (x) {
    case "topnav":
        x.className += " responsive";
        break;

    default:
        x.className = "topnav";
}

最佳答案

您正在比较x:

switch (x)

但是原始代码是比较x.className:

if (x.className === "topnav")

改为启用x.clasName:

switch (x.className)

关于javascript - 将 if/else 语句转换为 switch 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41837655/

相关文章:

javascript - NS_ERROR_XPC_BAD_CONVERT_JS : Could not convert JavaScript argument arg 0 [nsIDOMWindow. getComputedStyle](跟进)

从 postmaster@domain.co.uk 收到的 PHP 电子邮件表格

javascript - Canvas 旋转无法正常工作

javascript - 为什么 Protractor 会立即运行每一行代码?

javascript - 16 位时间戳转 Javascript 日期格式

javascript - HighCharts - 两个 Y 轴,一个具有最大值

javascript - 按空格分割字符串

javascript - 一些(JavaScript)事件重新排序有序的 html 选择选项

javascript - 使用 less.js 会出现异常

javascript - Angularjs:在 ng-include 中获取 document.querySelectorAll