在带有event.code的switch语句中使用JavaScript运算符

我有一个switch语句,其中我尝试将键盘快捷键映射到水平的整页滚动:

  • 空格键向下翻页向右箭头 向前滚动
  • 向上翻页左箭头滚动 向后
  • Home 向上箭头移至开头 页面的
  • End 向下箭头滚动到末尾 页面的

这是我的尝试,不起作用:

switch (event.code) {
  case "Space" || "PageDown" || "ArrowRight": {
    scrollAmount += window.innerWidth
    break
  }
  case "PageUp" || "ArrowLeft": {
    scrollAmount -= window.innerWidth
    break
  }
  case "Home" || "ArrowUp": {
    scrollAmount = 0
    break
  }
  case "End" || "ArrowDown": {
    scrollAmount = container.scrollWidth
    break
  }
}

在这种情况下,如何正确使用运算符?

jackybye 回答:在带有event.code的switch语句中使用JavaScript运算符

您应该specify each case separately

switch (event.code) {
  case "Space":
  case "PageDown":
  case "ArrowRight": {
    scrollAmount += window.innerWidth
    break
  }
  case "PageUp":
  case "ArrowLeft": {
    scrollAmount -= window.innerWidth
    break
  }
  case "Home":
  case "ArrowUp": {
    scrollAmount = 0
    break
  }
  case "End":
  case "ArrowDown": {
    scrollAmount = container.scrollWidth
    break
  }
}
本文链接:https://www.f2er.com/3151624.html

大家都在问