有没有办法用javascript隐藏多个html标记?

有没有办法用javascript隐藏多个html标记?,javascript,html,Javascript,Html,我想知道是否有任何简单的方法可以用Javascript切换HTML元素?我正在做的一个项目有一堆ascii艺术,我需要一种有效的方式来显示/隐藏它,而不必重复同一行一百万次 这是一段有问题的代码: function dagger(){ document.getElementById("short").style.display = "none"; document.getElementById("long").style.display = "none"; document.ge

我想知道是否有任何简单的方法可以用Javascript切换HTML元素?我正在做的一个项目有一堆ascii艺术,我需要一种有效的方式来显示/隐藏它,而不必重复同一行一百万次

这是一段有问题的代码:

  function dagger(){
  document.getElementById("short").style.display = "none";
  document.getElementById("long").style.display = "none";
  document.getElementById("broad").style.display = "none";
  document.getElementById("choose").style.display = "none";
  /* all the stats and modifiers go here */
}

function short(){
  document.getElementById("dagger").style.display = "none";
  document.getElementById("long").style.display = "none";
  document.getElementById("broad").style.display = "none";
  document.getElementById("choose").style.display = "none";
  /* all the stats and modifiers go here */
}

function long(){
  document.getElementById("short").style.display = "none";
  document.getElementById("dagger").style.display = "none";
  document.getElementById("broad").style.display = "none";
  document.getElementById("choose").style.display = "none";
  /* all the stats and modifiers go here */
}

function broad(){
  document.getElementById("short").style.display = "none";
  document.getElementById("long").style.display = "none";
  document.getElementById("dagger").style.display = "none";
  document.getElementById("choose").style.display = "none";
  /* all the stats and modifiers go here */
}
正如你所看到的,它真的很笨重和巨大。我尝试将id设置为变量,并从函数中调用它,如下所示:

var dagger = getElementById("dagger");
var short = getElementById("short");

function dagger(){
  short.style.display = "none";
}

但出于某种原因,这是行不通的。如果您有任何想法,我们将不胜感激。

虽然我同意评论员的意见,您应该使用类来实现此目的,但您的问题的答案是,当您仍然需要调用
document.getElementById
时,您正在调用
getElementById

var long=function(){
document.getElementById(“short”).style.display=“无”;
document.getElementById(“long”).style.display=“无”;
document.getElementById(“宽”).style.display=“无”;
document.getElementById(“选择”).style.display=“无”;
/*所有的统计和修改都在这里*/
}
var short=document.getElementById(“short”);
var dagger=函数(){
short.style.display=“无”;
}
short
长的
宽阔的
选择
长的

dagger
有什么不使用的具体原因吗?谢谢你的建议,我将研究如何操纵类。这对我来说是全新的,所以我甚至不知道我可以将一个类分组到一个数组中;我发现它不起作用,因为我将变量命名为与函数相同的名称,所以我将它们全部切换为daggerView、shortView等。。。现在它可以正常工作了。直到你的解决方案我才意识到,谢谢。