문제:
Android 3.0 (Honeycomb) 에서 Touch Event 가 작동하지 않는경우
(3.1, 3.2 버전에서는 동작한다.)
원인:
- OEM browser 버그로 추정.
정확한 증상:
PS. Android 3.0 의 OEM browser 에서 재현이 가능함. (Emulator 재현 가능)
- Touch Event 를 적용한 Element 가 화면에 보이지 않는경우 Event 실행이 되지 않음.
(스크롤을 내려서 하단에 숨어있던 Element 를 위로 올리는경우)
만일 다음과 같이 Div Element 가 하단에 일부가 노출이 된다고 한다면
스크롤을 내려서 아래의 Element 가 다 보이게 화면을 구성해도
실제 Touch Event 가 발생하는 곳은 처음 보였던 부분밖에 Touch 가 되지 않는다.
해결방법:
- 별다른 해결방법이 없어서 click Event 로 처리함
PS. 단점
Emulator 에서 mouseover Event 가 실행되는 시점이 손가락으로 눌렀을 때 바로 반응을 해야 하는데 Android 3.0 에서는 손가락을 떼었을때 (click 시점)에 이벤트가 발생이 된다...ㅠㅠ
Touch Event 관련하여 다음과 같은 이슈도 있었다.
[Android Browser] 손가락으로 이동 후 떼었을 때 touchend event가 실행되지 않는경우
[Mobile][Javascript] touch Event(touchstart, touchmove, touchend) 가 작동하지 않는경우
댓글
댓글 쓰기