テーブルの特定列に対して、ボタンをクリックした際に、
表示、非表示をJavaScriptで切り替えるようにしたいのですが、
セルの数が多いせいか私が作ったコードだと表示の切替に時間がかかり、
高速で表示、非表示を切り替える方法を探しています。
現在の実装は、切替対象のセルにあらかじめクラス(switch)を設定しておき、
ボタンをクリックした際にswitchクラスが設定されたtdタグに対して、
表示用のクラス(active)を追加しています。
CSSでactiveクラスがある場合、セルを表示するようにしています。
今の実装はループで1個ずつクラスを足しているのも遅い要因かと考えているのですが、
まとめてクラスを足すということは可能なのでしょうか。
JavaScript
1const classList = document.getElementsByClassName("switch"); 2for (let i = 0; i < classList.length; i++) { 3 classList.item(i).classList.toggle('active'); 4}
css
1.switch { 2 background-color: #f00; 3 display: none; 4} 5td.active { 6 display: table-cell; 7}
JSFiddleに作ったサンプルです。
https://jsfiddle.net/q015mu3v/
回答2件
あなたの回答
tips
プレビュー