在页面制作的时候常用的html页面滚动加载,可视区域判断方法

演示图

考虑2个情况
一种情况初始状态下 滚动到在中间区域的时候,这时上半部分看不见的元素就不给字体添加红色
一种情况是,从头向下看的.

代码

 1 .ss li {
 2   margin: 40px;
 3 }
 4 <div class="ss">
 5             <ul>
 6                 <li>sss</li>
 7                 <li>sss</li>
 8                 <li>sss</li>
 9                 <li>sss</li>
10                 <li>sss</li>
11                 <li>sss</li>
12                 <li>sss</li>
13                 <li>sss</li>
14                 <li>sss</li>
15                 <li>sss</li>
16                 <li>sss</li>
17                 <li>sss</li>
18                 <li>sss</li>
19                 <li>sss</li>
20                 <li>sss</li>
21                 <li>sss</li>
22                 <li>sss</li>
23                 <li>sss</li>
24                 <li>sss</li>
25                 <li>sss</li>
26                 <li>sss</li>
27             </ul>
28         </div>
 1 const doct = window.document.documentElement;
 2 const el = document.querySelectorAll("li");
 3 window.addEventListener("scroll", () => {
 4       el.forEach((v, i) => {
 5           /*
 6             考虑2个情况 , 一种情况初始状态下 滚动到在中间区域的时候,这时上半部分看不见的元素就不给字体添加红色
 7             一种情况是,从头向下看的.
 8            */
 9 // 
10           if (v.offsetTop > doct.scrollTop && v.offsetTop < doct.clientHeight + doct.scrollTop) {
11                         v.style.color = "red";// 给可视区域元素添加红色
12           }
13      });
14 });
原文地址:https://www.cnblogs.com/ypppt/p/12883881.html