
使用 javascript 实现 css sticky 效果
css sticky 效果允许元素在超出视口高度时固定在视口顶部或底部。但是,如果元素高度大于视口高度,它在滚动过程中不会跟随滚动条移动,直到完全隐藏。
css 解决方案
以给定的 html 代码为例,该代码中右侧面板使用了 css sticky 效果。要实现所需的效果,我们需要使用 javascript 来强制元素跟随滚动条移动。
立即学习“Java免费学习笔记(深入)”;
javascript 解决方案
我们可以使用 stickyfill.js 库来实现这一效果。该库提供了一个 polyfill,它可以在不支持 css sticky 的浏览器中模拟 sticky 效果。
功能列表:底层程序与前台页面分离的效果,对页面的修改无需改动任何程序代码。完善的标签系统,支持自定义标签,公用标签,快捷标签,动态标签,静态标签等等,支持标签内的vbs语法,原则上运用这些标签可以制作出任何想要的页面效果。兼容原来的栏目系统,可以很方便的插入一个栏目或者一个栏目组到页面的任何位置。底层模版解析程序具有非常高的效率,稳定性和容错性,即使模版中有错误的标签也不会影响页面的显示。所有的标
以下是修改后的代码:
html
......
javascript
Stickyfill.forceSticky(); // 强制开启 polyfill
Stickyfill.addOne(document.querySelector('.r')); // 添加到要应用 sticky 效果的元素通过强制开启stickyfill,即使在支持css sticky 的浏览器中,也会模拟sticky 效果。 stickyfill.addone() 方法将粘性效果添加到指定元素。
现在,即使右侧面板的高度大于视口高度,它也会在滚动过程中跟随滚动条移动,直到完全隐藏。









