0 html javascript queryselector
我正在尝试将滚动触发的动画添加到我的在线作品集网站,并且在我的经验列表之间我有简单的 div 作为分隔符:
<div class='divider'></div>
Run Code Online (Sandbox Code Playgroud)
我正在尝试添加入口动画。
我的JS如下:
<div class='divider'></div>
Run Code Online (Sandbox Code Playgroud)
即使我的分隔符直接放置在 HTML 中,带有 querySelectorAll 的语句console.log()也会返回一个空的 NodeList,所以我不确定为什么我的 querySelector 无法识别它们。
我怀疑 JS 是在元素完全加载之前执行的,但我还没有成功使用几种不同的等待方法。
小智 6
即使您将脚本放在底部,也要确保它在 DOM 加载后执行。
另外,它是forEach,而不是 foreach 。
window.addEventListener("DOMContentLoaded", function() {
const obs = new IntersectionObserver(entries => {
entries.forEach(entry => {
console.log(entry);
if (entry.isIntersecting) {
entry.target.classList.add('divider-animation');
}
});
});
console.log(document.querySelectorAll(".divider"));
const dividerList = document.querySelectorAll(".divider");
dividerList.forEach(divider => {
obs.observe(divider);
})
}, false);Run Code Online (Sandbox Code Playgroud)
<div class='divider'></div>Run Code Online (Sandbox Code Playgroud)