数字の表があります。テーブルのセルをクリックすると、アクティブ状態が切り替わります。1つのセルを選択してcrtlを押し、別のセルを選択すると、1番目と2番目のセルがアクティブになります。それを実装する方法?
codepen https://codepen.io/geeny273/pen/GRJXBQP
<div id="grid">
<div class="cell">1</div>
<div class="cell">2</div>
<div class="cell">3</div>
<div class="cell">4</div>
<div class="cell">5</div>
<div class="cell">6</div>
</div>
const grid = document.getElementById("grid")
grid.onclick = (event) => {
event.stopPropagation();
const { className } = event.target;
if (className.includes('cell')) {
if (className.includes('active')) {
event.target.className = 'cell';
} else {
event.target.className = 'cell active';
}
}
}
シフトハイライトのように機能し、双方向に機能します。
lastclick
、thisclick
およびctrl
クリックのチェック