2012-06-26 57 views
6

Tôi có một ứng dụng sử dụng điện thoại di động jquery và bao gồm một vài trang html với một vài phần tử trang jquery bên trong chúng. Trên một trình duyệt máy tính để bàn tất cả hoạt động tốt nhưng khi tôi tải nó trên thiết bị Android của tôi (chạy 2.3) trang đầu tiên có vẻ tốt, nhưng bất cứ khi nào bạn nhấp vào một liên kết (cho phép nói từ index.html -> logged-in-menu.html jquery di động dường như không khởi động và không có kiểu cách nào được áp dụng. Nếu tôi sau đó chuyển về index.html từ trang hiện tại thì index.html không được đặt trước.Cách đúng để sử dụng điện thoại di động và điện thoại di động với nhiều trang html

Vì vậy, có chính xác cách di chuyển giữa các trang html riêng biệt? Tôi không nhận được bất kỳ lỗi trình duyệt nào vì vậy mọi thứ có vẻ là để hoạt động tốt nhưng không có kiểu dáng hoặc tính năng nào của jqm được áp dụng.

Chỉ cần mọi người ở cùng một trang, liên kết sử dụng dữ liệu -ajax = "false" để chúng tạo ra một p hoàn chỉnh tuổi làm mới (vì điều này là cần thiết), các ứng dụng không thể làm việc như một ứng dụng trang đơn để đưa tất cả mọi thứ vào một tập tin html lớn không phải là một lựa chọn.

+1

bạn có thể đặt nguồn của tệp html chính và tệp html bạn đang chuyển sang '(index.html -> đã đăng nhập- menu.html) 'nếu có thể – dhaval

+0

Nếu bạn hoàn toàn làm mới trang thì tôi cho rằng bạn sẽ cần tham chiếu đến tệp JS và CSS của PhoneGap/Cordova và JS trong mỗi trang HTML. Bạn đã làm điều này à? – csbrookes

+0

Bạn có thể gặp lỗi trong đường dẫn của mình. Kiểm tra Logcat. Tải xuống và liên kết điện thoại di động jquery/jquery cục bộ và CSS của chúng. –

Trả lời

4

Nếu bạn không tạo kiểu tóc, bạn có tài liệu CSS bị thiếu, lỗi JS hoặc bạn không cấu trúc HTML đúng trên trang mới.

+0

Thats điều, không có lỗi JS, không có gì là sôi nổi để Logcat. Nó hoạt động FINE trên các trình duyệt máy tính để bàn Chrome, Firefox, vv .. Không có lỗi nào, khi tôi sử dụng các thử nghiệm chấp nhận dựa trên JSLint, JSTestRunner và Selenium. Để chứng minh nó hoạt động như dự định. Phần lớn các chức năng được chia sẻ giữa các trang vì vậy nếu không có trang làm việc tôi sẽ hiểu, nhưng khi trang đầu tiên hoạt động tốt (Mà tải rất nhiều css, js năng động và đá off knockout JS knockout). Vì vậy, như bất kỳ trang tiếp theo nào không hoạt động (thậm chí trở lại index.html sau đó bị hỏng nhưng không có lỗi js). – Grofit

+0

Nó vẫn có thể là lỗi JS hoặc CSS. Trình duyệt trên máy tính không phải là trình duyệt nội bộ. Tôi sẽ đề nghị sử dụng được xây dựng trong đăng nhập để xem nếu các phần của JS của bạn không. Ngoài ra nếu PhoneGap có một chế độ gỡ lỗi, tôi sẽ bật nó lên. Tôi biết họ có thêm chức năng ghi nhật ký trong khi quay lại nhưng tôi chưa sử dụng nó vì nó là Alpha/Beta. Việc ghi nhật ký JS thông thường trên Android được ghi lại ở đây: http://developer.android.com/guide/webapps/debugging.html –

+0

Khi bạn nói ghi nhật ký được xây dựng, ý bạn là gì? Tôi đã thử bằng cách sử dụng hook-in gỡ lỗi công cụ phonegap nơi bạn bao gồm các js với #someUniqueName và đi đến debug.phonegap.com/ /someUniqueName nhưng lại không có lỗi ở đó. Các công cụ javascript đang được kích hoạt như tôi tự đặt một cảnh báo trong khi tất cả các công cụ năng động của tôi đã được tải, và nó xảy ra (chậm hơn tôi đã mong đợi). Tôi sẽ yêu một lỗi như tôi có thể sửa chữa nó sau đó, nhưng hiện tại im trong limbo với nó: ( – Grofit

0

Một cách khác là chia nhỏ các trang (và thậm chí cả các trang trong một trang) thành các tệp .html mẫu riêng được tải động và hiển thị chúng khi cần. Xem hướng dẫn về "tạo ứng dụng dành cho thiết bị di động với KnockoutJS, PhoneGap và jQuery Mobile" http://bit.ly/crmakopgjqm

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