javascript - div随滚动条而滚动,但到顶后就固定了,这种效果叫啥名字?如何实现?
PHP中文网
PHP中文网 2017-04-10 13:09:37
[JavaScript讨论组]

rt,就类似于豆瓣首页右下方那个p一样的效果

PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(7)
黄舟

stickUp
http://www.bootcss.com/p/stickup/


其实我也自己写过:

    ***    需要引入jQuery    ***

    $(document).scroll(function (){

        //固定SideBar
        if ($(document).scrollTop() > '180') {
            $('#sidebar').offset({top:$(document).scrollTop()+10});
        }else if($(document).scrollTop() <= '180') {
            $('#sidebar').offset({top:191});
        };

    });

监听scroll事件,判断与浏览器顶部的距离,加以操作。代码中的三个数字请自行确定,也可能不需要。

PHP中文网

css有个探索性的新属性也是同样效果
position:sticky;

PHP中文网

http://twbs.github.io/bootstrap/javascript/#affix

bootstrap affix,这个插件强大之处在于可以同时 top和bottom 定位,
参见官方文档左侧导航效果,

我之前也发现了一个需要注意的问题,
http://segmentfault.com/q/1010000000362152

如果只是bottom 或者top中的一个定位,只判断$(window).scrollTop()就可以了,同时需要top就bottom定位的话用affix插件就方便了

伊谢尔伦

对,sticky,类似fixed和absolute的结合体,比如腾讯的移动网站就是用的这种效果

PHP中文网

这种效果叫 sticky,这种动作叫 pin。 可以用更新 top 的方式来实现,也可以用改变 position 为 fixed 的方式来实现。fixed 的方法在 chrome 里面可能会出现元素短暂消失的情况,可能要给元素加一个 css 属性:-webkit-transform: rotateZ(0); 强制浏览器使用硬件加速,来解决这个问题。

怪我咯

这类插件很多,推荐这个:http://www.css88.com/archives/3515

大家讲道理

这个是定位,用positionfixed属性可以实现。
一个固定定位(position属性的值为fixed)元素会相对于视窗来定位,这意味着即便页面滚动,它还是会停留在相同的位置。和 relative 一样, toprightbottomleft 属性都可用。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号