0
특정 조건에서 Safari가 iOS 장비에서 수신 거부되는 것을 방지하기 위해 touchStart
이벤트를 방지하고 싶습니다.touchStart 방지 및 클릭 이벤트 허용
$('.wrapper').on('touchstart', function(e) {
e.preventDefault();
});
하지만 지금은 클릭 이벤트 중 누구도 그것에 작동하지 :
$('.wrapper').on('click', function() {
$('.wrapper').text('Click fired');
});
나는 click
을 대체 할 수
그래서이 (가) folowing 사용하고 수행하려면 다른 이벤트에 대한 이벤트. 이것은 최종 사용자로부터 온 것일 수 있습니다.
iOS 10 이전 버전에서는 수신 거부 could be avoided by preventing only touchMove
이 있었지만 iOS 10 이후에는 touchStart
도 차단되지 않는 한 바운스됩니다.
touchStart
이벤트 만 방지하고 click
이벤트를 사용할 수있는 방법이 있습니까?
Nop는, 작동하지 않습니다. 'click' 전에는 언제나'touchStart'를 해고하는 것 같습니다. 따라서 클릭을 방지합니다. – Alvaro
'mousedown '으로'click'을 변경하는 것은 어떻습니까? – Dekel
내가 말했듯이 그건 옵션이 아닙니다. 개발자는 원하는 모든 이벤트를 사용할 수 있으며 '클릭'을 사용할 가능성이 큽니다. 해결 방법을 찾았습니다. 하지만 해킹처럼 보입니다. DI가 기본 이벤트를 차단 한 후에 이벤트 대상에서 클릭 이벤트를 트리거합니다. https://jsfiddle.net/8n47whd0/5/ – Alvaro