다른 사람의 조언에 따라 iOS에서 기본 앱 수신 거부 기능을 사용 중지하기 위해이 모바일 환경 webapp에 $('body').on('touchstart', function(event){ event.preventDefault() })
행을 추가했습니다. 바운스를 사용하지 못하게하는 데는 효과적이지만 DOM의 다른 곳에서는 이상한 행동을합니다.event.preventDefault()가 DOM에 정확히 얼마나 영향을 줍니까?
Click 이벤트가 작동하지 않는 등의 이벤트를 클릭하십시오.이 기능과 DOM의 다른 곳에서의 효과를 해결하는 방법에 대해 더 잘 이해하고 싶습니다.
감사합니다.
편집 : 나는 preventDefault
줄을 주석으로 경우
$('body').on('touchstart', function(e){ e.preventDefault() };
$('#home').on('click', function(){ alert('home') };
는 다음 #home
라인이 작동합니다
나는이 두 가지 라인이있다. #home 행에 남겨두면 응답하지 않습니다. #home
은 body
에 중첩 된 div 일뿐입니다.
이 동작의 원인은 무엇입니까? 더 큰 코드베이스의 일부이므로 모든 세부 정보를 제공하기가 어렵지만 시작할 위치를 알지 못합니다.
감사합니다.
이것은 기본 JavaScript가 아니며 [jQuery preventDefault 메서드] (http://api.jquery.com/event.preventDefault/)입니다. –
@ShadowWizard 사실 그것은 https://developer.mozilla.org/en-US/docs/DOM/event.preventDefault입니다. – Niko
@Niko : jQuery 객체에서 호출 할 때 네이티브 메소드가 아닙니다 : https : // github .com/jquery/jquery/blob/master/src/event.js # L666 – Blender