我在HTML中使用输入类型DATE,Chrome和Firefox中的一切都运行良好,但IE不显示日期选择器。
当我使用JQuery Datepicker时,我在Chrome和Firefox中获得了两个日期选择器对话框。
如何修复我可以拥有日期输入类型的功能,并且只为我的表单添加一个弹出窗口?
答案 0 :(得分:15)
您需要使用polyfill,以便输入类型DATE在所有浏览器中都具有一致的行为。您可以将此webshim用作填充。
输入类型DATE是HTML5功能,并非所有浏览器都支持。如果您想使用浏览器不支持的HTML5功能(通常是IE),请使用以下两项内容:
功能检测功能可以确定我们的浏览器是否支持HTML5功能。一个好的图书馆是Modernizr。你可以用modernizr做的是检测你是否需要任何你需要的功能,如果没有,那么你可以有条件地加载一些将实现该功能的javascript库。这些库名为Polyfills。
因此,例如,如果您想在IE 10中使用该标记,您可以使用jqueryui.com控件来提供日期选择器。
Modernizr.load({
test: Modernizr.inputtypes.date,
nope: "js/jquery-ui.custom.js",
callback: function() {
$("input[type=date]").datepicker();
}
});
Modernizr测试是否支持该功能,可选地,您可以使用nope指示是否存在您想要加载的库(如果不支持该功能),并且回调是在测试后将调用的代码,加载库后。