作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们在 Angular 5 应用程序中使用 Chart.js(版本 2.6.0)作为条形图,客户希望我们禁用图表交互的悬停事件(他们只希望条形图发生变化并显示工具提示)当用户单击一个栏时)。
在条形图选项对象中,我们为 events 属性定义了以下内容:
events: ["touchstart","touchmove","click"]
这会禁用条形图上的悬停事件。然而现在,客户希望我们在用户将鼠标悬停在其中一个栏上时将光标更改为指针,以便他们知道可以单击它,这是一个有效的点。我在这里找到了几个解决方案,但我似乎无法找到一种方法来做到这一点,而不将“mousemove”添加到事件属性,这只会在整个图表上实现悬停交互。
真正让我困惑的是 options.hover 有一个名为“onHover”的事件属性,它有一个回调,但当任何定义的事件发生时(包括点击),它就会触发。
http://www.chartjs.org/docs/latest/general/interactions/events.html
一般情况下,在不重新启用悬停交互的情况下,这是否可能?任何帮助将不胜感激。
最佳答案
使用 Chart.js 3.x:
onHover: (event, chartElement) => {
event.native.target.style.cursor = chartElement[0] ? 'pointer' : 'default';
}
使用 Chart.js 2.x:
onHover: (event, chartElement) => {
event.target.style.cursor = chartElement[0] ? 'pointer' : 'default';
}
关于javascript - 当悬停(鼠标移动)事件被禁用时,将 Chart.js 条形图上的光标更改为指针?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49040768/
我是一名优秀的程序员,十分优秀!