perf: 优化键盘关闭

This commit is contained in:
kuaifan 2022-06-10 20:59:01 +08:00
parent 58b5843dd9
commit 300798981d
4 changed files with 36 additions and 7 deletions

View File

@ -1125,17 +1125,39 @@
},
/**
* 主动失去焦点
* 主动失去焦点关闭键盘
* @param el
*/
onBlur(el = null) {
if (el) {
el.blur();
} else {
if (document.activeElement && typeof document.activeElement.blur === "function") {
document.activeElement.blur();
setTimeout(_ => {
$A.eeuiAppKeyboardHide();
if (el) {
el.blur();
} else {
if (document.activeElement) {
if (document.activeElement.tagName === "BODY") {
let inputElement = document.getElementById("toLoseFocusInput")
if (!inputElement) {
inputElement = document.createElement("input");
inputElement.id = "toLoseFocusInput";
inputElement.type = "text";
inputElement.style.position = "fixed";
inputElement.style.top = "0px";
inputElement.style.left = "0px";
inputElement.style.zIndex = "-1";
inputElement.style.opacity = "0";
inputElement.addEventListener("focus", e => {
document.activeElement.blur();
});
document.body.appendChild(inputElement);
}
inputElement.focus()
} else {
document.activeElement.blur();
}
}
}
}
}, 1);
}
});

View File

@ -53,6 +53,11 @@
requireModuleJs("eeui").keepScreenOff();
},
eeuiAppKeyboardHide() {
if (!$A.isEEUiApp) return;
requireModuleJs("eeui").keyboardHide();
},
eeuiAppSendMessage(object) {
if (!$A.isEEUiApp) return;
requireModuleJs("webview").sendMessage(object);

View File

@ -641,6 +641,7 @@ export default {
fileShow(val) {
if (!val) {
this.browseFile(0)
$A.onBlur()
}
},

View File

@ -5,6 +5,7 @@
left: 0;
right: 0;
bottom: 0;
z-index: 1;
display: flex;
flex-direction: column;
border-radius: 18px 18px 0 0;