@AlexNew22

Как повесить 3 события на 3 разных зоны в input date?

Как сделать так, чтобы при нажатии на дату мы могли менять дату числами, при нажатии на кастомную иконку у нас этот календарик вызвался, а при нажатии на пустоту в инпуте мы открыли новый блок для ввода даты в ручную в других полях?
https://jsfiddle.net/75z1ejrc/
  • Вопрос задан
  • 50 просмотров
Решения вопроса 1
firedragon
@firedragon
Senior .NET developer
Зачем 3?
<style>
  input {
    width: 250px;
  }
</style>
<input type="date" id='simpledata'>
<script>
  function listener(e) {
    // console.log(e)
    // console.log(`offsetX: ${e.offsetX} offsetY: ${e.offsetY} `);
    if (e.offsetX < 84) {
      console.log("click in date");
    } else if (232 > e.offsetX && e.offsetX > 84) {
      console.log("blank");
    } else {
      console.log("click calendar");
    }
  }
  var data = document.getElementById("simpledata");
  data.addEventListener("click", listener);
</script>
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы