【问题标题】:Scrolling issue on IOSIOS上的滚动问题
【发布时间】:2021-08-07 19:07:41
【问题描述】:

我在使用 IOS Safari 时遇到滚动问题。该网站有一个固定的顶部和底部,很多图像,包括作为背景的伪元素(之前/之后),以及一些相对位置和负边距。

在 android 上它可以完美运行,但在 ios 上它有时会卡住。我无法滚动,页面跳动,经过一些尝试,问题停止了。

我在 body 和 html 元素上也有一个“overflow-x: hidden”。

有人知道是什么原因造成的吗?

【问题讨论】:

    标签: css ios scroll


    【解决方案1】:

    iOS 浏览器(包括 Chrome 和 Safari)有一个错误,即 css 伪元素在滚动后可能会消失。有一个技巧可以解决:在滚动过程中删除伪 css,并在滚动完成后将其放回。

    示例css,将“===”作为伪元素放入“.info”类:

    .info:not(.scrolling) {
    content: "===";
    }
    

    示例jQuery,在滚动时将“滚动”类添加到“.info”类中,并在滚动完成时删除该类:

    let isscrolling = null;
    
        $(".info").on("scroll",function (e) {
            if(isscrolling){
                clearTimeout(isscrolling);
            }
            $(".info").addClass("scrolling");
            isscrolling = setTimeout(function(){
                $(".info").removeClass("scrolling");
                isscrolling = null;
            },100);
        });
    

    【讨论】:

      猜你喜欢
      • 2020-04-06
      • 1970-01-01
      • 2015-06-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-20
      • 1970-01-01
      • 2016-03-12
      相关资源
      最近更新 更多