通过 getElementsByClassName 正确迭代
使用网页时,通过类名访问元素是一项常见任务。 getElementsByClassName 方法提供一个 NodeList,它表示匹配元素的集合。但是,迭代 NodeList 可能很棘手,尤其是在修改 DOM 时。
在您的情况下,您尝试迭代 getElementsByClassName("slide") 返回的元素并对每个元素执行操作使用分配功能。但是,由于 NodeList 性质的变化,您会遇到不可预测的行为。
解决方案是使用 item(index) 方法从 NodeList 中检索单个元素。正确迭代的方法如下:
const slides = document.getElementsByClassName("slide"); for (let i = 0; i通过使用 item() 方法,您可以通过索引访问 NodeList 中的每个元素。这可以确保迭代保持确定性,即使 DOM 正在发生变化。
其他注意事项
如果您的幻灯片元素可以相互嵌套,请务必注意item() 方法将为任何没有指定类名的嵌套元素返回 null。要处理嵌套幻灯片,您可以使用更高级的技术,例如查询容器内的所有元素并按类名称过滤它们。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3