mirror of
https://github.com/kuaifan/dootask.git
synced 2026-03-25 14:53:31 +00:00
perf: 优化键盘关闭
This commit is contained in:
parent
58b5843dd9
commit
300798981d
36
resources/assets/js/functions/common.js
vendored
36
resources/assets/js/functions/common.js
vendored
@ -1125,17 +1125,39 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 主动失去焦点
|
* 主动失去焦点(关闭键盘)
|
||||||
* @param el
|
* @param el
|
||||||
*/
|
*/
|
||||||
onBlur(el = null) {
|
onBlur(el = null) {
|
||||||
if (el) {
|
setTimeout(_ => {
|
||||||
el.blur();
|
$A.eeuiAppKeyboardHide();
|
||||||
} else {
|
if (el) {
|
||||||
if (document.activeElement && typeof document.activeElement.blur === "function") {
|
el.blur();
|
||||||
document.activeElement.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);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
5
resources/assets/js/functions/eeui.js
vendored
5
resources/assets/js/functions/eeui.js
vendored
@ -53,6 +53,11 @@
|
|||||||
requireModuleJs("eeui").keepScreenOff();
|
requireModuleJs("eeui").keepScreenOff();
|
||||||
},
|
},
|
||||||
|
|
||||||
|
eeuiAppKeyboardHide() {
|
||||||
|
if (!$A.isEEUiApp) return;
|
||||||
|
requireModuleJs("eeui").keyboardHide();
|
||||||
|
},
|
||||||
|
|
||||||
eeuiAppSendMessage(object) {
|
eeuiAppSendMessage(object) {
|
||||||
if (!$A.isEEUiApp) return;
|
if (!$A.isEEUiApp) return;
|
||||||
requireModuleJs("webview").sendMessage(object);
|
requireModuleJs("webview").sendMessage(object);
|
||||||
|
|||||||
@ -641,6 +641,7 @@ export default {
|
|||||||
fileShow(val) {
|
fileShow(val) {
|
||||||
if (!val) {
|
if (!val) {
|
||||||
this.browseFile(0)
|
this.browseFile(0)
|
||||||
|
$A.onBlur()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
@ -5,6 +5,7 @@
|
|||||||
left: 0;
|
left: 0;
|
||||||
right: 0;
|
right: 0;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
|
z-index: 1;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
border-radius: 18px 18px 0 0;
|
border-radius: 18px 18px 0 0;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user