Я создал указатель даты в JS.При щелчке по входу с указанным классом запускается средство выбора даты.
Когда я нажимаю OUT ввода или средства выбора даты, оно скрывается.
Проблема:
- Когда я нажимаю на ПО для выбора даты, оно скрывается, потому что я щелкаю не сам инструмент выбора даты, а один из его многочисленных дочерних элементов.
Я пытался:
- Чтобы добавить условие ИЛИ в оператор IF (см. Ниже);
- Чтобы выбрать все дочерние узлы средства выбора даты с помощью "date_picker".childNodes ", но он выбирает только двух первых потомков.
Что я хочу:
- Выбрать все элементы DIV средства выбора даты;поэтому, когда я нажимаю на него, на нем все равно отображается указатель даты.Как?(Если у вас есть какое-либо другое решение, я его возьму).
Выбор даты:
<div class="date-picker">
<div class="date-picker-header">
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
</div>
<div class="date-picker-body">
<div class="child"></div>
<div class="child"></div>
<div class="child"></div>
</div>
</div>
JS, запускающий средство выбора даты:
var date_picker = document.querySelector(".date-picker");
var input = document.querySelector(".input-date-picker");
document.addEventListener("mousedown", function(e) {
// If the INPUT or the DATE_PICKER or any of its children is clicked.
if(e.target == input || e.target == date_picker || /* date_picker children */) {
// Triggers the date-picker.
}
else {
// Hides the date-picker.
}
}, false);