繁体   English   中英

Chrome 更新 73 - Materialize CSS JS 触发错误

[英]Chrome Update 73 - Materialize CSS JS trigger error

在最新的 Chrome 更新 73 之后,Materialize CSS 0.100.2 的日期选择器、时间选择器和下拉菜单不再起作用,当您单击它时它会闪烁然后消失。

知道如何解决这个问题吗?

我遇到过同样的问题。 现在我做了一些改动让它工作(这对我来说只是一个临时热修复)。

在materialize.js上(materialize-v0.100.2而不是最小值):

1)在第1786行,有一个setTimeout(带有注释“Add click close handler to document”),其等待值为0,将其更改为100。

2)在第6558行,有一个绑定到datepicker元素外部的点击。 (注释“绑定文档事件”。)将所有这些绑定放在setTimeout中,等待时间为500毫秒。

修复1用于选择,第二个用于datepicker。

这是Chrome 73中的回归。我们已经发布了pickadate 3.6.1,它应该解决这个问题。

有关Chrome中的回归,请参阅https://bugs.chromium.org/p/chromium/issues/detail?id=941910

para timepicker comentar los siguiente en materialize.js

/** Hide when clicking or tabbing on any element except the clock and input
    $doc.on('click.clockpicker.' + this.id + ' focusin.clockpicker.' + this.id, function (e) {
      var target = $(e.target);
      if (target.closest(self.popover.find('.picker__wrap')).length === 0 && target.closest(self.input).length === 0) {
        self.hide();
      }
    });*/

我在chrome中找到了一个修复程序 ,你只需要使用这个例子: $(“#dtFrom”)。off(“focus”)如果页面很慢,你需要把它放在setTimeout里面

解决方案是使用父级过滤目标:if(target!= ELEMENT && target!= document && target!= P. $ root.parent()[0] && event.which!= 3)

我有同样的问题。 虽然我正在使用angular2-materialize ,但我相信这应该适用于直接使用materialize人。

对我有用的解决方案是使用div来包装materialize select输入,该div具有一个简单调用event.stopPropagation()click监听器:

<div (click)="$event.stopPropagation()">
    <select materialize="material_select" [value]="selectValue" formControlName="someControl">
    // options omitted (not relevant to answer)
    </select>
</div>

我希望这可以帮助一些人。

对于那些懒得自己调整materialize.js的人。 我添加了500毫秒的默认超时(我认为这是一致的)。 这适用于日期和时间选择器。

materialize.js

基于 Armando 的答案(唯一对我有用的答案),我使用 JQuery 为非角度项目创建了一个 javascript 函数:

function refreshSelects(){
    $('select').material_select('destroy');
    $('select').each(function(){
        $(this).parent().attr("onclick","event.stopPropagation();");
    });
    $('select').material_select();  
}

然后,当我必须初始化或刷新选择器内容时,我只需要调用该函数

refreshSelects();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM