Поддерживает ли браузер INPUT type=date

Это на самом деле очень просто. Любой браузер, который не поддерживает тип dateбудет по умолчанию приводить к стандартному типу, которым является text, поэтому все, что нужно сделать, это проверить свойство type, если это не date, то ввод даты не поддерживается браузером. В этом случае вы должны добавить свой собственный обработкчик

jQuery:

<script>
if ( $('[type="date"]').prop('type') != 'date' ) { 
    /* нет встроенной поддержки выбора даты в браузере */
} 
</script>

javascript:

Не прибегая к jQuery можно проверить поддержку dateна javascript:

<script>
var i = document.createElement("input");
i.setAttribute("type", "date");
if (i.type == "text") {
    /* нет встроенной поддержки выбора даты в браузере */
}
</script>

Modernizr:

Если вы используете Modernizr, то можете проверить им, поддерживает ли браузер родной datepickers.

<script>
if (!Modernizr.inputtypes.date) {
    /* нет встроенной поддержки выбора даты в браузере */
}
</script>

  1. JavaScript
  2. Примеры