Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/432.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Amcharts-如何在新选项卡/窗口中打开链接_Javascript_Amcharts - Fatal编程技术网

Javascript Amcharts-如何在新选项卡/窗口中打开链接

Javascript Amcharts-如何在新选项卡/窗口中打开链接,javascript,amcharts,Javascript,Amcharts,我正在尝试使用amcharts制作图表。在这种情况下,我将类别作为链接,希望在新选项卡/窗口中打开这些链接。我添加了以下代码,该代码在新选项卡/窗口中打开链接,但同时也在同一选项卡中打开链接。请告诉我我做错了什么。我不想使用Jquery,而且我对javascript还是新手 这是我添加到javascript中的代码,用于在新选项卡中打开类别链接- window.open(event.serialDataItem.dataContext.url, '_blank'); 这是原始的AmCharts

我正在尝试使用amcharts制作图表。在这种情况下,我将类别作为链接,希望在新选项卡/窗口中打开这些链接。我添加了以下代码,该代码在新选项卡/窗口中打开链接,但同时也在同一选项卡中打开链接。请告诉我我做错了什么。我不想使用Jquery,而且我对javascript还是新手

这是我添加到javascript中的代码,用于在新选项卡中打开类别链接-

window.open(event.serialDataItem.dataContext.url, '_blank');
这是原始的AmCharts代码笔-

这是片段-

var chart=AmCharts.makeChart(“chartdiv”{
“类型”:“串行”,
“主题”:“光”,
“addClassNames”:true,
“头衔”:[{
“文本”:“在单独的窗口中打开此演示,以获取工作链接”
}],
“数据提供者”:[{
“国家”:“美国”,
“访问”:2025年,
“url”:”https://codepen.io"
}, {
“国家”:“中国”,
“访问”:1882年,
“url”:”https://codepen.io"
}, {
“国家”:“日本”,
“访问”:1809年,
“url”:”https://codepen.io"
}, {
“国家”:“德国”,
“访问”:1322次,
“url”:”https://codepen.io"
}, {
“国家”:“英国”,
“访问”:1122次,
“url”:”https://codepen.io"
}, {
“国家”:“法国”,
“访问”:1114,
“url”:”https://codepen.io"
}, {
“国家”:“印度”,
“访问”:984,
“url”:”https://codepen.io"
}, {
“国家”:“西班牙”,
“访问”:711,
“url”:”https://codepen.io"
}, {
“国家”:“荷兰”,
“访问”:665次,
“url”:”https://codepen.io"
}, {
“国家”:“俄罗斯”,
“访问”:580,
“url”:”https://codepen.io"
}, {
“国家”:“韩国”,
“访问”:443,
“url”:”https://codepen.io"
}, {
“国家”:“加拿大”,
“访问”:441,
“url”:”https://codepen.io"
}, {
“国家”:“巴西”,
“访问”:395次,
“url”:”https://codepen.io"
}],
“价值轴”:[{
“gridColor”:“#FFFFFF”,
“gridAlpha”:0.2,
“dashLength”:0
}],
“网格图”:没错,
“起始持续时间”:1,
“图表”:[{
“文本”:“[[category]]:[[value]]”,
“填充字母”:0.8,
“lineAlpha”:0.2,
“类型”:“列”,
“valueField”:“访问”
}],
“图表光标”:{
“CategoryBallooneEnabled”:false,
“cursorAlpha”:0,
“可缩放”:错误
},
“类别字段”:“国家”,
“分类法”:{
“网格位置”:“开始”,
“gridAlpha”:0,
“滴答声位置”:“开始”,
“滴答声长度”:20,
“听众”:[{
“事件”:“点击项目”,
“方法”:函数(事件){
window.location.href=event.serialDataItem.dataContext.url;
window.open(event.serialDataItem.dataContext.url,“u blank”);
}
}]
}
});
#chartdiv{
宽度:100%;
高度:400px;
}
.amcharts轴标签{
光标:指针;
}

您应该删除该行

 window.location.href = event.serialDataItem.dataContext.url;
。。从单击项目侦听器

此行指示浏览器替换当前页面位置。基本上,这一行阻止下一行执行

这应该起作用:

"listeners": [{
  "event": "clickItem",
  "method": function(event) {
    window.open(event.serialDataItem.dataContext.url, '_blank');
  }
}]

它可能无法在Codepen环境中工作,但应该在其他地方工作。

感谢您的回复。不起作用。当我将代码放入服务器时,它会在新选项卡中打开链接,但同时链接会在同一窗口中打开。这与我目前面临的问题相同。任何名为“url”的字段都会被AMSCHARTS自动识别,并将遵循默认行为。您可能希望将“url”重命名为“网站”,以防止AMSCHARTS获取该url。请为服务器出现问题道歉。你的代码正在运行。接受你的回答。请在回答中提供一些适当的文档