• 移动端开发技巧总结


    移动端开发小技巧:

    1,可滚动的弹窗

     之前自己实现这个需求的时候就很头疼,看似简单的需求结果耗费了很长时间,最近看到了别人的总结,根据自己的实践,记录下如下方案。具体思路就是在弹出弹窗时,将body设置为fixed,并且计算出当前的滚动高度,设置为body的top值,然后当关闭弹窗时,取消掉添加在body上的属性,并且,将页面滚动到刚才记录的那个高度就行了,思路是很清晰的,下面就上代码吧。

    //css
    body.static {
            position: fixed;
            left: 0;
             100%;
          }
    
    
    // js
     methods: {
        clickHandle() {
          this.isShowPop = true;
          const body = document.body;
          const scrollTop = document.scrollingElement.scrollTop;
          this.scrollTop = scrollTop;
          body.classList.add("static");
          body.style.top = `-${scrollTop}px`;
        },
        closeHandle() {
          const body = document.body;
          const scrollTop = this.scrollTop;
          console.log("----", this.scrollTop);
          body.classList.remove("static");
          body.style.top = "";
          document.scrollingElement.scrollTop = scrollTop;
          this.isShowPop = false;
        },
      },

    这个就基本实现了想要的效果了,弹窗中该滚动就滚动。

    2,输入框输入数字,会导致软键盘顶起页面并且不回弹,这个在ios端出现的概率比较高,当然,解决办法也比较简单,其实和上面的也差不多,贴个代码吧。

    var input =document.querySelect('input');
    var scrollTop=0;
    input.addEventListener('focus',function(){
    scrollTop=document.scrollingElement.scrollTop;
    })
    input.addEventListener('blur',function(){
    document.scrollingElement.scrollTo(0,scrollTop);
    })

     其实看了上面两个就可以发现,这里用到的核心方法就是scrollingElement,看了张鑫旭大神的评测,移动端基本都支持,可以放心使用,桌面端可以使用polyfill https://github.com/mathiasbynens/document.scrollingElement

     3,准备写写移动端适配

     

  • 相关阅读:
    cookie和session区别
    jsp编写页面时常见错误提示
    web处理jsp文件的三个阶段
    JSP页面元素
    B/S与C/S区别
    url组成部分
    css选择器
    ol,ul,dl,table标签的基本语法
    剑指offer-把二叉树打印成多行
    剑指offer-从上往下打印二叉树
  • 原文地址:https://www.cnblogs.com/ysla/p/14470082.html
Copyright © 2020-2023  润新知