javascript - amcharts:如何在工具提示中添加操作

标签 javascript amcharts

我正在尝试在 amcharts 中添加一个操作,例如:

function myfunc(name){
  alert("hi "+name);
}

var tooltipDetail='<div class="detail" name="{name}" onclick="myfunc({name});">detail {name}</div>'

series1.columns.template.tooltipHTML = tooltipDetail;

当我将 'myfunc()' 替换为 'alert(1)' 时,它会启动警报,但代码中定义的 myfunc 会在控制台中启动错误 'Uncaught ReferenceError: myfunc is not defined'。为什么?我该如何解决这个问题?

我的意图是使用 jquery 创建一个更详细的函数,例如:
$('.detail').click(function(){
  var name=this.attr("name");
  $("#selected").html(name);
});

但它不起作用,然后我简化了代码......我检查了 $('.detail').html() 如果工具提示尚未显示则不可用,所以我认为它是在启动工具提示时构建的。

我还尝试在工具提示中包含该功能,例如:
var tooltipDetail='<script>function hi({name}){alert("hi"+name);}</script><div class="detail" name="{name}" onclick="hi({name});">detail {name}</div>'

它会导致同样的问题,'hi' 没有定义。

有什么推荐吗?
谢谢

最佳答案

AmCharts 似乎有一个事件系统。尝试使用点击事件处理程序:

function myfunc(){
  alert(1);
}
series.tooltip.events.on('hit', myFunc);

请参阅此修改后的 CodePen,其中工具提示可单击:
https://codepen.io/krassdanke/pen/ZEbyQyY (原文来自 amCharts 官方文档:https://www.amcharts.com/docs/v4/tutorials/clickable-links-in-tooltips/)

关于javascript - amcharts:如何在工具提示中添加操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61423099/

相关文章:

javascript - AmCharts 值轴不从零开始

javascript - 具有 html 输出的 Angular 三元运算符

javascript - 在不破坏现有保存的情况下更改保存的应用程序数据格式的策略 (JavaScript+IndexedDB)

javascript - 使用javascript取消设置刷新按钮?

javascript - amcharts4 处理对数值轴上零值的正确方法

javascript - 删除 AmCharts 中的灰色标题框

javascript - 在 amcharts 条形图上显示百分比

javascript - 在 for 循环中创建对象语法错误

javascript - 使用 fetch 的 XML 请求和响应?

javascript - 如何在 AmCharts4 类别轴上显示所有标签或减少标签填充?