Notice
Recent Posts
Recent Comments
Link
투케이2K
181. (javascript/자바스크립트) onresize 화면 크기 변환 감지 사용해 안드로이드 가상 키보드 활성 상태 체크 실시 본문
JavaScript
181. (javascript/자바스크립트) onresize 화면 크기 변환 감지 사용해 안드로이드 가상 키보드 활성 상태 체크 실시
투케이2K 2022. 7. 12. 16:16[개발 환경 설정]
개발 툴 : Edit++
개발 언어 : javascript
[소스 코드]
<!-- [내부 자바스크립트 J쿼리 이벤트 지정] -->
<script>
// [전역 변수 관리]
var bodyHeightOriginalSize = "";
var bodyHeightChangeSize = "";
// [dom 생성 및 이벤트 상시 대기 실시]
document.addEventListener("DOMContentLoaded", ready);
function ready(){
console.log("");
console.log("[window ready] : [start]");
console.log("");
}
// [html 최초 로드 및 이벤트 상시 대기 실시]
window.onload = function() {
console.log("");
console.log("[window onload] : [start]");
console.log("");
// [브라우저 초기 로드 시 가상 키보드 비활성 상태 인 Height 값 저장 실시]
bodyHeightOriginalSize = document.body.clientHeight;
};
// [html 화면 사이즈 변경 이벤트 감지]
window.onresize = function() {
console.log("");
console.log("[window onresize] : [start]");
console.log("");
// [실시간 변경 된 Height 값 저장 실시]
bodyHeightChangeSize = document.body.clientHeight;
console.log("");
console.log("[window onresize] : [body 높이 값 확인 실시]");
console.log("[bodyHeightOriginalSize] : [원본] : " + bodyHeightOriginalSize);
console.log("[bodyHeightChangeSize] : [변경] : " + bodyHeightChangeSize);
console.log("");
// [접속 한 디바이스 확인 실시]
var uagent = navigator.userAgent.toLowerCase();
var android_agent = uagent.search("android");
var iphone = uagent.search("iphone");
var ipad = uagent.search("ipad");
// [접속 한 디바이스가 안드로이드 인 경우]
if (android_agent > -1) {
// [원본 사이즈와 변화된 사이즈가 같은 경우 : 가상 키보드 비활성 상태]
if (bodyHeightOriginalSize == bodyHeightChangeSize){ // [원본 사이즈와 변화된 사이즈가 같은 경우 : ]
console.log("");
console.log("[window onresize] : [가상 키보드 비활성]");
console.log("");
}
// [원본 사이즈와 변화된 사이즈가 다른 경우 : 가상 키보드 활성 상태]
else {
console.log("");
console.log("[window onresize] : [가상 키보드 활성]");
console.log("");
}
}
};
</script>
반응형
'JavaScript' 카테고리의 다른 글
Comments