Ответ 1
EDIT: из Firefox 57, <input type="date"/>
поддерживается .
Firefox пока не поддерживает HTML5 <input type="date"/>
.
У вас есть два варианта:
- всегда используйте сборщик datetime для Javascript или
- проверьте, поддерживает ли браузер этот тег, если да его использует, если нет, то резерв на javascript datepicker (jQuery или какой-либо другой).
Это называется Обнаружение функций и Modernizr - самая популярная библиотека для этого.
Использование всегда javascript datepicker проще и быстрее, но он не будет работать с отключенным javascript (кто заботится), он будет очень плохо работать на мобильном телефоне (это важно), и он будет пахнуть старым.
Использование гибридного подхода вместо этого позволит вам охватить все случаи сейчас, вплоть до того дня, когда каждый браузер будет поддерживать дату-пиккер HTML5, стандартизированным образом и без необходимости использования javascript вообще. Это надежное будущее, и это особенно важно при просмотре мобильных телефонов, где jappictary datepickers практически непригодны для использования.
Это пример запуска для каждого элемента <input type="date"/>
каждой страницы автоматически:
<script>
$(function(){
if (!Modernizr.inputtypes.date) {
// If not native HTML5 support, fallback to jQuery datePicker
$('input[type=date]').datepicker({
// Consistent format with the HTML5 picker
dateFormat : 'yy-mm-dd'
},
// Localization
$.datepicker.regional['it']
);
}
});
</script>
Он использует jQuery, потому что я использую jQuery, но вы можете подставить части jQuery с помощью javascript ванили, а часть datepicker с помощью japcript-datepicker по вашему выбору.