Escuche el evento de focus en el elemento, luego invoque el método HTMLInputElement.showPicker() :
document.getElementById("datePicker").addEventListener('focus', function(event) { event.target.showPicker(); }); <input type="date" id="datePicker" /> Nota: Desafortunadamente, esto no funciona en el fragmento de código anterior debido a las restricciones de llamar a showPicker() de origen cruzado combinado con las implicaciones de origen cruzado de la propia función Stack Snippets, pero debería funcionar en la práctica.
Sin embargo , debe considerar que este método en particular tiene un soporte relativamente pobre (solo ~66% de todos los navegadores lo implementan al momento de escribir este artículo).