javascript - 在交叉点观察器功能和元素转换完成之前,元素 CSS 属性不会在页面刷新时重置
问题描述
我有一个网站,我正在使用启动函数向元素添加一个类,然后等待 800 毫秒并在其他两个元素上启动我的交叉点观察器函数。我遇到的问题是,当我在由交叉观察器函数引起的过渡期间刷新页面时,第一个元素没有重置为其原始属性并且第一个函数没有执行。如果我不使用交叉点观察器功能,则不会出现此问题。
我正在使用 Google Chrome 来测试我的项目并启用了实时服务器。
// Get work items
const projects = document.getElementsByClassName('work-item');
// Convert each item to an object and attach observer to each item
function observeLoop() {
for ( i = 0; i < projects.length; i++) {
projects[i].toObject;
observer.observe(projects[i])
}
}
// Observer options
const options = {
root: null,
rootMargin: '0px',
threshold: 0.05
}
// Intersection observer callback and options
let observer = new IntersectionObserver( (entries) =>{
entries.forEach(item => {
if (item.isIntersecting) {
item.target.classList.add('show');
}
});
}, options);
// Startup function
function init() {
const title = document.getElementsByClassName('landing-page')[0].classList.add('show-lander');
setTimeout(observeLoop, 800);
}
// Call startup function
init();
解决方案
推荐阅读
- laravel - Laravel voyager:如何在下拉列表中仅显示非管理员
- python-3.x - 如何安排函数在固定时间点运行?
- java - 比较两个字符串时出现问题
- android - 如果使用导航控制器,如何删除某些片段中的底部导航视图和工具栏?
- javascript - 如何在 JavaScript 中清空数组?
- r - 在 sfClusterCall() 中使用 save()
- python - 如何在 2.1 版中从 django 数据库中清除缓存?
- python - python install zbar错误:安装脚本退出错误:命令'gcc'失败,退出状态为1
- bigdata - 字符串列不在指标内列出,仅允许在 GoodData 中创建报告时从指标中选择数字列类型
- azure - 授予 Azure Active Directory 中的外部用户访问共享点站点的权限