使用自定义指令:
Vue.directive('fixKeyBoardBug', {
inserted(el) {
let timer = null;
const fixKeyBoardBugFocus = function () {
timer && clearTimeout(timer);
};
const fixKeyBoardBug = function () {
timer = setTimeout(() => {
var scrollTop = window.scrollTop;
window.scrollTo(0, 0);
setTimeout(() => {
window.scrollTo(0, scrollTop);
}, 0);
}, 100);
};
el.addEventListener('blur', fixKeyBoardBug);
el.addEventListener('focus', fixKeyBoardBugFocus)
}
});
使用:
<input v-fixKeyBoardBug type="tel" maxlength="11" v-model="phone" />
网友评论