2012-04-11 29 views
15

Tôi đã tạo một ứng dụng đơn giản cho iphone của mình bằng cách sử dụng jQuery Mobile và Phonegap. nó hoạt động rất tốt, nhưng ứng dụng sử dụng những điều sau đây để chuyển đổi sang một trang khác và đó là chậm như là địa ngục:Làm cách nào để tăng tốc hoạt ảnh chuyển tiếp trang?

<a data-role="button" id="about_link" data-transition="slide" 
    href="#page3" data-icon="gear" data-iconpos="left"> 
    Settings 
</a> 

Chỉ cần một đơn giản a đang làm sự kỳ diệu ở đây và điều đó dẫn đến việc 400ms lạ tụt hậu vv ..

Bây giờ sau rất nhiều lần đọc, tôi đã thực hiện nút a một số div và tự xử lý sự kiện nhấp để làm cho nút nhanh hơn.

$("#about_link").live("touchstart", function(){ 
    slideTo('#page3',false); 
}); 
function slideTo(page,reverse){ 
    $.mobile.changePage(page, { 
     transition: "slide", 
     reverse: reverse 
    }); 
} 

Sự khác biệt là đáng kể nhưng vẫn còn quá chậm đối với khẩu vị của tôi. Có vẻ như jQuery Mobile đợi toàn bộ hoạt ảnh của nút (di chuột và nhấp) để kết thúc trước khi nó chuyển sang trang khác.

Bây giờ câu hỏi của tôi:

  1. là touchstart cách nhanh nhất? Tôi đã sử dụng các thư viện khác như fastclick nhưng cũng không quá nhanh.
  2. Nút hoạt ảnh có phải là badguy ở đây không? Tôi có thể vô hiệu hóa nó sau đó?
  3. Các bạn có thể cho tôi lời khuyên không? Google không phải là bạn của tôi về vấn đề cụ thể này ...

Gr.

+0

Thử loại chuyển tiếp trang khác sẽ làm gì? Tôi có nghĩa là như phai – uday

+0

slideUp trông một bit liiiitle nhanh hơn, nhưng đó có thể chỉ là một ảo ảnh vì hướng khác nhau và khoảng cách dài hơn. Fade dường như giống nhau. –

Trả lời

33

Nó thực sự trong css jquery di động:

.in, .out { 
    -webkit-animation-timing-function: ease-in-out; 
    -webkit-animation-duration: 350ms !important; 
} 

Chỉ cần tinh chỉnh các ms và bạn tốt.

+2

+1 Tuyệt vời, tôi sắp sửa đăng bài tương tự! – uday

+0

Hey người đàn ông, xin lỗi vì những phản ứng muộn đáng kinh ngạc: D Điều này đã giúp đỡ, nhưng vẫn còn trên Iphone tôi cảm thấy mọi thứ không phải là tối ưu. Tôi có các ứng dụng phản hồi tức thì, tôi vẫn có chút chậm trễ. Bất kỳ gợi ý nào khác? –

+7

Tôi đã phải sử dụng! Quan trọng để ghi đè thời lượng: -webkit-animation-duration: 660ms! Important; – appcropolis

Các vấn đề liên quan