Tôi nghĩ rằng vấn đề này là tương tự như trong WP7 mô tả here.
KIỂM TRA ĐỐI VỚI VẤN ĐỀ PATH:
if($.mobile.path.getLocation("x-wmapp1:/app/www/index.html") != "x-wmapp1:/app/www/index.html")
{
console.log('there is path problem');
}
else
{
console.log('everything is OK with paths');
}
SOLUTION:
Như đã trình bày trong github, vấn đề là con đường trên WP7 khác với các nền tảng khác. Về cơ bản trên WP7 getLocation in đường dẫn tương đối với dấu gạch chéo kép, gây ra vấn đề này ở vị trí đầu tiên. Để khắc phục, mở jquery.mobile-1.3.1.js và refactor sau:
- var uri = url ? this.parseUrl(url) : location,
- hash = this.parseUrl(url || location.href).hash;
+ var uri = this.parseUrl(url || location.href),
+ hash = uri.hash;
và:
- return uri.protocol + "//" + uri.host + uri.pathname + uri.search + hash;
+ return uri.protocol + uri.doubleSlash + uri.host + uri.pathname + uri.search + hash;
Sau khi thực hiện điều này thay đổi, kiểm tra sẽ hiển thị "tất cả mọi thứ là OK".
PS Điều này được kiểm tra trên WP7 và hoàn toàn khắc phục sự cố của tôi với $ .mobile.changePage().
PS2 Vấn đề này được khắc phục ở phiên bản github của jQuery, mặc dù tôi vừa kiểm tra phiên bản ổn định mới nhất (1.3.2) và tiếc là nó KHÔNG được sửa ở đó.
Kính trọng,
Hristo Todorov
Nguồn
2013-07-24 10:29:44
Ca bạn đăng mã gọi '$ .mobile.changePage()'? –
mã hoạt động hoàn hảo trên Android. –
Phiên bản Windows 8 dành cho thiết bị di động không được jQuery Mobile hỗ trợ sion, http://jquerymobile.com/gbs/. Nhưng mã của bạn là chính xác. Vấn đề chính là hệ điều hành không được hỗ trợ. – Gajotres