jQuery 1.6.4, iOS 5 및 touchstart/touchend 이벤트 등록 문제가 있습니다 (제목에 명시된 바와 같이).iOS 5의 jQuery 이벤트
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<script type="text/javascript" src="mmpa/jquery-1.6.4.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
var $body = $('body');
$('<button>').html('test jQuery').bind('touchstart', function() { alert('touchstart'); }).appendTo($body);
});
</script>
</head>
<body>
<button ontouchstart="alert('touchstart');">test pure JS</button>
</body>
</html>
은 "순수 JS"버튼은 아이폰 OS 4.3에서 iOS 5에서 경고를 표시하지만, "jQuery를"버튼은 아이폰 OS 4.3에서 작동 :
다음 코드를 가져 가라. iPad/iPhone 시뮬레이터 4.3 및 5에서 테스트되었습니다. 실제 iPhone 4.3, iPhone 5.0 및 iPad 5.0에서도 테스트되었습니다. <input type="button">
또는 <button>
대신 간단한 <a>
을 사용하는 경우에도 같은 반응이 나타납니다.
내가 믿는 것처럼 jQuery와 관련된 문제입니까? 애플 dev에 포럼에 사람에 의해 응답
는
바인드 사용하지 않는 ('touchstart를') ontouchstart = "". 그들 중 하나를 사용하고, 인라인 자바 스크립트를 사용하지 않는 것을 선호합니다. –
jQuery가 작동하지 않을 때 인라인 JS가 작동한다는 것을 보여주는 개념 증명이되었습니다. 물론 필자는 인라인 JS를 실제 코드로 사용하지 않습니다. – Cyrille
jQ 1.5.2 및 click 이벤트로이 오류를 생성 할 수 있었으므로 제목을 "iOS 5의 jQuery Events"처럼 수정해야합니다. – webXL