2012-12-19 2 views
0

iOS 용 phonekap을 사용하여 jquery 모바일 앱에서 click 이벤트 속도를 높이기 위해 iOS 용 fastklick 플러그인을 사용하고 있습니다.Jquery Mobile은 fastklick을 사용하지만 뒤로 버튼은 매우 느립니다.

jquery의 뒤로 버튼을 제외하고 버튼과 링크가 잘 작동합니다. 나는이 사용하는 경우

: 나는이 버튼을 클릭 할 경우 다음

<div data-role="page" id="test" data-add-back-btn="true"> 

를 이미 아이폰 OS에서의 지연이있다. 처음에는 버튼이 파란색으로 바뀌고 페이지는 슬라이딩합니다. 어떻게이 문제를 방지 할 수 있도록이 버튼을 내가

<button>...</button>? 

으로 생성하고 다른 버튼처럼 빠르게 작동하고 내 자신의 뒤로 버튼을 작성하고 이벤트를 적용 할 수 있습니까?

<a class="ui-btn-left" data-icon="arrow-l" href="javascript:history.back(1) " data-theme="a">Back</a> 

나이 :

답변

1

먼저 제거 데이터 추가 백 BTN = "true"로 당신이 시도 할 수

<a class="ui-btn-left" data-icon="arrow-l" href="#" data-theme="a" id="back-btn">Back</a> 

$('#back-btn').bind('touchstart', function(e) { 
    $.mobile.changePage("#pageID"); 
}); 

그냥 실제 페이지 ID로 #pageID을 변경합니다. touchstart 이벤트는 페이지 스크롤이 아닌 페이지를 수행하는 경우 뒤로 버튼에 유용합니다.

+0

흠 좋습니다. 그러나 이것은 각 페이지에서 (어느 #pageId) 뒤로 버튼을 눌러야 하는지를 알 필요가 있음을 의미합니다. –

+0

Btw : "touchstart"또는 "vclick"을 사용하는 것이 더 좋습니까? –

+0

사용자가 스크롤하지 않는다는 것을 알고 있으면 터치 시작 (또는 touchend) 이벤트가 훌륭하게 작동합니다. 실제로 클릭 이벤트가 모바일 장치에서 해결되는 데 너무 오래 걸린 이유이기 때문에 장치는 사용자가 스크롤하거나 클릭하는지 확인하려고 기다리고 있습니다. – Gajotres

관련 문제