[Javascript] .removeで消した要素を考慮しないで、いまある要素だけを考慮したindexを取得する
document.querySelectorAllで取得したインデックスを参照する際に、.removeで消した要素を考慮しないで、いまある要素だけを考慮したindexを取得するには、もう一度インデックスを取り直すとよい
document.querySelectorAll('.clickable-image').forEach((image, index) => {
image.addEventListener('click', function() {
// 現在の状態でのインデックスを取得
const currentIndex = Array.from(document.querySelectorAll('.clickable-image')).indexOf(this);
console.log("current index:", currentIndex);
showModal(currentIndex);
});
});
// 別の関数で要素を削除する例
function removeImage(targetElement) {
targetElement.remove();
}