2013-08-26 37 views
6

Tôi có một khá lớn ứng dụng iPad xây dựng sử dụng PhoneGap và tôi đã làm một số xét nghiệm để đảm bảo tất cả mọi thứ đang diễn ra để làm việc một cách thích hợp trong iOS 7. Vấn đề quan trọng nhất mà tôi đã tìm thấy là <input type="datetime"/> không còn được hỗ trợ.iOS 7 điện thoại di động Safari không còn hỗ trợ <input type = "datetime" />

Tôi đã thấy một số đăng đề xuất bạn cần phải có hai trường riêng biệt cho ngày và giờ. Đây là một thay đổi thực sự rất lớn bởi vì tôi đang sử dụng điều này trên tất cả các ứng dụng. Tôi hy vọng đây chỉ là một cái gì đó bị hỏng trong bản phát hành beta của iOS 7 vì đây là loại đầu vào tiêu chuẩn HTML 5 nhưng dường như tôi không thể tìm thấy bất kỳ thông tin nào.

Bất kỳ trợ giúp hoặc suy nghĩ nào sẽ được đánh giá cao.

+0

dựa trên này http://iosdeveloperforums.com/f6/ios-7-safari-dont- support-date-time-input-433.html không còn được hỗ trợ nữa. Tôi cũng đang giải quyết vấn đề này và lựa chọn duy nhất tôi có thể nghĩ là tách rời các lĩnh vực mặc dù nó sẽ là một thay đổi lớn. – jongbanaag

+0

Xin chào, điều gì về iphoner

Trả lời

16

Hỗ trợ cho datetime đã bị xóa, nhưng bạn có thể sử dụng datetime-local để thay thế. Từ những gì tôi nghe (không thể nói từ ai) ở đây để ở.

+1

Bất kỳ liên kết nào, để tham khảo? – xdumaine

3

Dường như loại đầu vào này được loại bỏ trong iOS 7

http://www.mobilexweb.com/blog/safari-ios7-html5-problems-apis-review

Tiếp theo Google Chrome, hiện Safari trên iOS không hỗ trợ đầu vào datetime gõ nữa và nó sẽ dự phòng để văn bản . Loại này không được chấp nhận trong tiêu chuẩn có lợi cho việc sử dụng hai yếu tố đầu vào, ngày và thời gian cho cùng một mục đích. Vấn đề là datetime tương thích với iOS từ phiên bản 5.0 đến 6.1; nếu bạn đang sử dụng nó, hãy cẩn thận!

+0

Tôi đã tìm kiếm bằng chứng về bài đăng này hoặc một bài đăng trên blog sao lưu nó, nhưng lại trống: Vẫn còn một thông số cho 'input [type =" datetime "]' trên trang W3C. Bạn có biết nơi thay đổi được ghi chép không? – ehdv

0

Tôi đã kết thúc bằng cách sử dụng datetime-local nhưng bạn phải đảm bảo bạn xem xét múi giờ khi liên kết đến và từ điều khiển. Chúng tôi muốn lưu trữ thời gian GMT trong cơ sở dữ liệu. Tôi đã sử dụng các hàm dưới đây để chuyển đổi qua lại trong quá trình liên kết.

function formatHTML5DateTime(date) 
{ 
try 
{ 
    if (typeof(date) == 'undefined' || date == null || date == '') return ""; 

    var tmpDate = new Date(date); 
    // gets the timezone offset in minutes 
    var offset = tmpDate.getTimezoneOffset(); 
    // apply the timezone offset in reverse to local time 
    var newDate = tmpDate.addMinutes(Math.abs(offset) * -1); 

    return newDate.toISOString().replace("Z", ""); 
} 
catch(e) 
{ 
    return ""; 
} 
} 

function formatJSDate(date) 
{ 
try 
{ 
    if (typeof(date) == 'undefined' || date == null || date == '') return ""; 

    var tmpDate = new Date(date); 
    // gets the timezone offset in minutes 
    var offset = tmpDate.getTimezoneOffset(); 
    // apply the timezone offset to UTC time 
    var newDate = tmpDate.addMinutes(offset); 

    return newDate.toISOString(); 
} 
catch(e) 
{ 
    return ""; 
} 
} 
-4

Xem tài liệu tham khảo here

CSS của bạn nên được thay đổi như sau:

{ 
align-items: center; 
display: -webkit-inline-flex; 
overflow: hidden; 
padding: 0px; 
-webkit-padding-start: 1px; 
} 
Các vấn đề liên quan