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,但不知道如何修复它。你应该报告这件事