H5 开发中常见的小问题

2019-04-20 08:55:11来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

1.解决 浏览器 返回按钮不刷新的问题
  window.onpageshow = function(event) {
    if (event.persisted) {
      window.location.reload()
  }};
2.H5 中 JS 禁用安卓手机物理返回键
  XBack = {};
  (function(XBack) {
    XBack.STATE = 'x - back';
    XBack.element;

    XBack.onPopState = function(event) {
      event.state === XBack.STATE && XBack.fire();
      XBack.record(XBack.STATE); //初始化事件时,push一下
    };

    XBack.record = function(state) {
      history.pushState(state, null, location.href);
    };

    XBack.fire = function() {
      var event = document.createEvent('Events');
      event.initEvent(XBack.STATE, false, false);
      XBack.element.dispatchEvent(event);
    };

    XBack.listen = function(listener) {
      XBack.element.addEventListener(XBack.STATE, listener, false);
    };

    XBack.init = function() {
      XBack.element = document.createElement('span');
      window.addEventListener('popstate', XBack.onPopState);
      XBack.record(XBack.STATE);
    };

  })(XBack); // 引入这段js文件

  XBack.init();
  XBack.listen(function() {});

3.解决移动端底部input被弹出的键盘遮挡问题
  方法1、
    Element.scrollIntoView(); // 让当前的元素滚动到浏览器窗口的可视区域内
    document.querySelector('#inputId').scrollIntoView();
  方法2:

    Element.scrollIntoViewIfNeeded();


原文链接:https://www.cnblogs.com/nmxs/p/10735512.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:前端笔记之JavaScript面向对象(四)组件化开发&轮播图|俄罗

下一篇:js 获取上传视频的时长、大小、后缀名