2

背景

我正在构建一个使用两个 HTML5type="date"输入元素的日期范围选择器:

在此处输入图像描述

如果用户使用事件选择与先前选择的日期不同的日期,我可以检测到日期选择器何时关闭change。但是,如果用户选择相同的日期,则输入值不会改变,Firefox 不会触发change事件或input事件。

示例代码

var dateInput = document.querySelector('[name="dateBegin"]');
var debugEl = document.querySelector('#debug');

dateInput.addEventListener('click', function(event){
  debugEl.innerHTML += '<br>Event fired: click';    
});

dateInput.addEventListener('input', function(event){
  debugEl.innerHTML += '<br>Event fired: input'; 
});

dateInput.addEventListener('change', function(event){
  debugEl.innerHTML += '<br>Event fired: change'; 
});
<input type="date" name="dateBegin">
<div id="debug"></div>

问题

有没有办法检测 HTML5 日期选择器何时因用户交互而关闭,即使输入的值没有改变?

4

0 回答 0