我有来自amcharts4的一级树状图。
我试图设置一个链接时,每一个项目点击它,但无法实现我想要的。
正如文件上说的那样,我试过:
level1_bullet.label.url = "https://www.google.com/";或
level1_bullet.url = "https://www.google.com/";两者都不起作用,我可以补充
level1_bullet.label.html = "<a href='https://google.com/'>{name}</a>";但是有一个问题,截断选项不工作,我可以看到太大的名字最小的子弹,包装也没有帮助。
发布于 2018-10-17 21:13:43
若要将LabelBullet转换为链接,请尝试:
level1_bullet.label.url = "https://www.google.com/";如果我们想要动态urls,我们必须使用适配器。url是一个简单的字符串,并不真正用于显示,因此它不会通过我们的字符串格式,这意味着像{name}这样的占位符不会被解析。幸运的是,Labels有url。它可以是这样的:
level1_bullet.label.adapter.add("url", function(url, label) {
var query = "";
var data = label.dataItem;
if (data.dataContext && data.dataContext.name) {
query = "?q=" + data.dataContext.name;
}
return url + query;
});适配器的处理程序将url设置为Label (本例中为"https://www.google.com/")作为第一个参数,Label实例作为第二个参数。我们return最终是自定义格式的url,也就是说,它不会永久地设置它,这是每次应用程序计算出url的值时运行的。
我在这里创建了一个演示:
https://codepen.io/team/amcharts/pen/79194dfcfccaa05f5ebe20e1095f3087
让我知道这是否有意义,如果这对你想要做的事情有帮助。
https://stackoverflow.com/questions/52776727
复制相似问题