我有一个使用PhoneGap构建的相当大的iPad应用程序,我正在进行一些测试以确保一切都能在iOS 7中适当地工作。我发现最重要的问题是不再支持。我已经看到几个帖子建议您现在需要为日期和时间分别拥有两个单独的字段。这是一个非常巨大的变化,因为我在整个应用程序中都在使用它。我希望这只是iOS 7 beta版本中出现的一些错误,因为它是HTML 5标准输入类型,但我似乎找不到任何信息。任何帮助或想法将不胜感激。
datetime
的支持已经被移除,但您可以使用datetime-local
代替。据我所知(无法透露消息来源),这种替代方案将长期存在。
看起来在iOS 7中已经移除了这个输入类型。
http://www.mobilexweb.com/blog/safari-ios7-html5-problems-apis-review
跟随Google Chrome的脚步,在iOS上的Safari不再支持datetime输入类型,并且将回退到text。标准已经废弃了这种类型,建议改用两个输入框,分别为日期和时间。问题在于,从版本5.0到6.1,datetime与iOS兼容;如果您正在使用它,请小心!
input[type="datetime"]
的规范。您知道这个更改在哪里记录吗? - ehdv最终我使用了datetime-local,但是在绑定控件时一定要考虑时区的影响。我们希望在数据库中存储GMT时间。我使用了以下函数来进行绑定时的转换。
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 "";
}
}
请参考此处的文献
您的CSS应该更改为如下:
{
align-items: center;
display: -webkit-inline-flex;
overflow: hidden;
padding: 0px;
-webkit-padding-start: 1px;
}