当输入框获取焦点时,键盘就会被弹出,这时会呈现一个问题,页面会被往上顶,咱们自定义导航栏区域就会顶上去:
未获取焦点时的页面:

获取焦点后的页面:

咱们查看https://developers.weixin.qq.com/miniprogram/dev/component/in...的input输入框的api发现了:

进而去设置输入框的属性adjust-position为false
然而,这时会呈现一个问题,输入框会被弹出的键盘挡住,咱们无奈看到以后输入框输出的内容:
(操作:点击“21、”上面的输入框,能够发现键盘曾经把它挡住了)

这时去查了一下材料,发现:

而后去设置了发现没成果,前面就做了以下解决方案(仅集体以后见解):
input输入框设置:

**wxml**  <input         class="bloodNeutrophilPercentage"         name="bloodNeutrophilPercentage"         model:value="{{bloodNeutrophilPercentage}}"         type="text"         placeholder="请填写"           adjust-position="{{false}}"//勾销键盘弹出时主动上推页面         bind:focus="onFocus"//获取焦点事件         data-name="bloodNeutrophilPercentage"//会把数据传到输入框所有的事件中         bind:blur="onBlur"//输入框失去焦点事件         data-ratio="{{1}}"//会把数据传到输入框所有的事件中   />

`
js

//获取焦点事件onFocus(event) {    let { height } = event.detail; //键盘高度    let { name, ratio } = event.currentTarget.dataset;//输入框标签上设置的            data-name或data-ratio的值    var query = wx.createSelectorQuery();//获取界面上的节点信息    query.select(`.${name}`).boundingClientRect();    query.selectViewport().scrollOffset();//加着一行,能力获取到以后页面滚动数           据    query.exec((rect) => {        let { scrollTop } = rect[1];//以后滚动间隔        this.setData({            scrollTop: scrollTop,//存以后滚动间隔        });         //依据相应场景设置         //this.data.windowHeight为以后设施长度(也叫以后可视窗口长度)         //把可视窗口分为七分,判断以后输入框在可视窗口的占比是否小于键盘高度        if (this.data.windowHeight * (ratio / 7) < height) {           //把以后页面长度设置的大一些,否则上面设置的滚动没成果           //KeyboardHeight是设置页面长度是让页面长度+KeyboardHeight                            (KeyboardHeight初始值为0)            this.setData({ KeyboardHeight: height * 0.56 + 1100 });        }      //设置页面滚动        wx.pageScrollTo({            selector: "#page", // 写法同css选择器            scrollTop: scrollTop + height * 0.56,        });    });},//失去焦点事件onBlur() {    let { scrollTop } = this.data;    this.setData({ KeyboardHeight: 0 });//复原点击输入框之前的滚动地位    wx.pageScrollTo({        selector: "#page", // 写法同css选择器        scrollTop: scrollTop,    });},

`