【发布时间】:2018-10-11 13:34:26
【问题描述】:
当我将鼠标悬停在另一个元素上时,我试图单击饼图中的一个元素,为此我正在使用 HighChart。但是,当我尝试单击元素时,在鼠标悬停功能下,我收到一条错误消息,提示“单击不是功能”。基本上,当有人将鼠标悬停在 H1 标签上时,我想将鼠标悬停在 Apple 切片上这是我尝试过的:
debugger;
Highcharts.chart('container', {
chart: {
type: 'pie',
options3d: {
enabled: true,
alpha: 45
}
},
title: {
text: 'Contents of Highsoft\'s weekly fruit delivery'
},
subtitle: {
text: '3D donut in Highcharts'
},
plotOptions: {
pie: {
innerSize: 100,
depth: 45
}
},
series: [{
name: 'Delivered amount',
data: [
['Bananas', 8],
['Kiwi', 3],
['Mixed nuts', 1],
['Oranges', 6],
['Apples', 8],
['Pears', 4],
['Clementines', 4],
['Reddish (bag)', 1],
['Grapes (bunch)', 1]
]
}]
});
var ch = document.getElementsByClassName("highcharts-color-4");
var bx = document.getElementById("Apples");
var cv = bx;
if (ch && bx) {
for (var i = 0; i < ch.length; i++) {
ch[i].addEventListener("mouseover", mouseOver);
}
bx.addEventListener("mouseover", mouseOver);
}
function mouseOver() {
$("#Apples").css("color", "red");
var c = document.getElementsByClassName("highcharts-color-4");
if (c) {
for (i = 0; i < c.length; i++) {
c[i].click();
}
}
}
<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="https://code.highcharts.com/highcharts-3d.js"></script>
<script src="https://code.highcharts.com/modules/exporting.js"></script>
<script src="https://code.highcharts.com/modules/export-data.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="container" style="height: 400px"></div>
<h1 id="Apples">Apples</h1>
这是jsfiddle的链接
【问题讨论】:
-
c[i]不是一个 jQuery 对象,您可以在其上调用 jQuery 函数.click(),这样做$(c[i]).click()应该可以工作 -
你想要触发点击事件还是定义事件?
-
基本上将鼠标悬停在元素上
-
悬停工作正常。
c[i].click();有什么用 -
@empiric 错误消失了,但没有出现应该在点击功能上的弹出窗口
标签: javascript jquery html svg highcharts