javascript - 手机端,js固定层的问题
高洛峰
高洛峰 2017-04-10 15:54:49
[JavaScript讨论组]

需求:当滚动到某个层后,该层就固定在可视窗体上,滚动回去,则不固定在窗体上。

我的思路:滚动值小于该层距离顶部的偏移高度时,改层就加(position:fixed),否则就加上

问题: 在手机上运行时,当向上滚动的过程中就会出现这个问题

当滚动结束后才会恢复正常,如下图

在pc端用谷歌浏览器模拟的时候没什么问题

哪位大侠有遇到过这问题吗?

//首页底部分类固定

    var _vNavH = $('.pLeft').offset().top; //获取固定层离页面顶部的偏移高度值
    var _scroll;

    //滚动方法        
    $(window).scroll(function() {
        _scroll = $(document).scrollTop();    
        
        //当滚动高度大于该层,就让它处于固定状态
        if(_scroll > _vNavH){
            $('.pLeft ul').addClass('pLeftUlFixed');
        
        }else{
            $('.pLeft ul').removeClass('pLeftUlFixed');                    
        }
        
    });    

在微信上会出现这问题,在手机浏览器上又是正常的

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(1)
大家讲道理

iOS 使用 position:sticky,Android的话JS模拟可以实现。

github上搜一下关键字:

  • https://github.com/garand/sticky

  • https://github.com/filamentgroup/fixed-sticky

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

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