修改记录:ios
在输入框上监听blur事件,事件触发后将body滚动至底部。web
functiont scrollTop () {
// ios12有效
window.document.body.scrollTop = window.document.body.scrollHeight;
// ios13有效 2019.10.12增长
window.document.documentElement.scrollTop = window.document.body.scrollHeight;
}
// el是输入框
el.onblur = scrollTop;
复制代码
缘由:bash
解决:dom
// el是输入框
el.onblur = () => {
setTimeout(scrollTop, 0);
};
复制代码
缘由:异步
解决: 在输入框获取和失去焦点时,clearTimeoutui
doms.forEach((item) => {
item.onfocus = () => {
// 元素获取焦点时,由webview滚动元素至但是区域
window.inputFocuseTimeout && clearTimeout(window.inputFocuseTimeout);
};
item.onblur = () => {
window.inputFocuseTimeout && clearTimeout(window.inputFocuseTimeout);
window.inputFocuseTimeout = setTimeout(scrollTop, 0);
};
});
复制代码
菜鸟第一次写东西,很脆弱的。因此有问题请留言问题,我积极修改。没有问题,请留言鼓励。spa