JavascriptでHTML要素を切り替える簡単な方法があるのでしょうか?私が作っている私のプロジェクトの一つのためにアスキーアートをたくさん持っています。百万回同じ行を繰り返すことなく、表示/非表示に効率的な方法が必要です。javascriptで複数のhtmlタグを隠す方法はありますか?
これは、問題のあるコードの小さなスニペットです:あなたが見ることができるように
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";
}
しかし、それは何らかの理由で機能しません。どんなアイデアでも大歓迎です。
を呼び出す必要があるときに
getElementById
を呼び出しているということです[getElementsByClassName()]を使用しない特定の理由(http://www.w3schools.com/jsref/met_document_getelementsbyclassname.asp) – sharyexアイデアをありがとう、私はクラスを操作します。これは私には全く新しいものなので、クラスを配列にまとめることさえできなかった。 – syntaxjedi