Javascript focusin事件未在HTML5日期和时间输入元素上触发 编辑:从Chrome 39开始,此问题已得到修复。看
我在每个表单元素的父元素上都有一个Javascript focusin事件未在HTML5日期和时间输入元素上触发 编辑:从Chrome 39开始,此问题已得到修复。看,javascript,html,google-chrome,input,Javascript,Html,Google Chrome,Input,我在每个表单元素的父元素上都有一个侦听器。每当我将焦点放在任何字段上时,监听器都会被触发,但当新的HTML5日期和时间输入通过在中切换或在中切换后单击来聚焦时,监听器不会被触发 侦听器代码: app.directive('fctrl', function() { return { restrict: 'E', replace: true, link: function (scope, element, attrs) {
侦听器。每当我将焦点放在任何字段上时,监听器都会被触发,但当新的HTML5日期和时间输入通过在中切换或在中切换后单击来聚焦时,监听器不会被触发
侦听器代码:
app.directive('fctrl', function() {
return {
restrict: 'E',
replace: true,
link: function (scope, element, attrs) {
element.bind('focusin', function (event) {
console.log(event.target)
});
}
}
});
简化布局:
<fctrl> <!--Angular Directive which I have attached the focus listener to -->
<div>
<!-- Omitted some divs -->
<div class="field-holder">
<input type="date" />
</div>
<!-- Omitted some divs -->
</div>
</fctrl>
这里有一个例子来说明这个问题
有没有办法让focusin事件在日期/时间元素上触发?这与AngularJS无关至少在chrome中,如果我单击日期文本,似乎可以工作,但如果我单击边框或/char,就好像我选择文本而不是聚焦一样。虽然这听起来像是Chrome的一个bug,但不知道如何修复它。你应该报告这件事