javascript - 将鼠标悬停在上面时闪烁的工具提示

标签 javascript css angular charts google-visualization

一旦我的鼠标悬停在谷歌图表上的实际工具提示上,我就会收到一个闪烁的工具提示。我一直在寻找解决方案,但到目前为止还无法解决问题。他们在这里debate about the mouse being below the tooltip element is what is causing the flickering .提供了一种解决方法,由于我对 Angular 缺乏了解,我可能无法实现。

//Change: 
google.charts.load('current', {'packages':['corechart']});

//To:
google.charts.load('42', {'packages':['corechart']});

我加载图表的方式就是在我的 html 组件中调用以下代码。

<google-chart [data]="pieChartData" 
ng-style="svg > g > g:last-child { pointer-events: none }"></google-chart>

提出的另一种解决方案是在样式中将 pointer-events 设置为 none。我尝试将这些行添加到我的 css 组件中。

svg > g > g:last-child { pointer-events: none }
div.google-visualization-tooltip { pointer-events: none }

没有任何结果,我还尝试在我用来绘制 PieChart 的标签上的 html 组件中添加 pointer-events: none。都带有“style”和“ng-style”。但是,我可以想象将 pointer-events` 设置为 none 工具提示根本不会显示,这是对正确功能的改进,但仍然不需要。

编辑: 我正在使用以下模块:https://www.npmjs.com/package/ng2-google-charts

最佳答案

我不再感到惊讶了。就在我提交问题时,我想到了检查 ng2-google-charts 模块并查找它加载图表的位置的想法。在 google-charts-loader.service.js 中,我将版本号从 45.2 更改为 42,这解决了这个问题。

GoogleChartsLoaderService.prototype.load = function (chartType) {
    var _this = this;
    return new Promise(function (resolve, reject) {
        if (resolve === void 0) { resolve = Function.prototype; }
        if (reject === void 0) { reject = Function.prototype; }
        _this.loadGoogleChartsScript().then(function () {
            google.charts.load('42', { // <---- version number
                packages: [_this.chartPackage[chartType]],
                language: _this.localeId,
                callback: resolve
            });
        });
    });
};

我仍然很欣赏使它与更高版本一起工作的选项。

关于javascript - 将鼠标悬停在上面时闪烁的工具提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47959669/

相关文章:

html - Flexbox 下拉菜单的位置和移动

javascript - 在 Angular 4 中连续循环 CSS 样式

javascript - 变量范围和使用 qUnit 进行测试

javascript - 指令中的 Angular 应用类

javascript - 未显示所选文件名

angularjs - 集成 TomCat 和 Node 服务器

javascript - Angular 7 为什么将正文转换为 JSON 字符串和对象

Javascript 搜索和替换包含方括号的字符序列

javascript - 每 5 秒加载一次随机 CSS 而无需刷新页面

html - 如何删除 Bootstrap 中列之间的装订线(间距)?