我使用amCharts显示地图。点击图标后,我想缩放并显示所有"描述"行中定义的标签。我已添加了属性map.allowMultipleDescriptionWindows = true;
,以便一次显示更多说明。然后我添加了侦听器来处理点击事件,但它导致循环。
然后我在缩放事件中编辑了代码 - 当我点击" 3"图标,我得到所有的线对象并调用map.clickMapObject(line);
,但问题是描述显示在我的光标位置,我需要它在线位置,如下所示:
有没有解决方案可以解决这个问题? 这是我定义线条和描述的方式:
map.dataProvider.areas = [
{
id: "CZ",
"title": "Czech republic",
"lines": [
{
id: PLarrowId,
groupId: groupId,
"arc": 0,
"selectable": true,
"color": "rgba(0,0,0,0.8)",
"thickness": 2.8,
"dashLength": 0,
"longitudes": [
26.9098,
31.8658
],
"latitudes": [
53.851,
55.8603
],
"arrow": "start",
"arrowSize": 16.8,
"description": "<table><tr><td>1</td><td>2</td><td>3</td></tr><tr><td>4</td><td>5</td><td>6</td></tr></table>",
"title": "Table 2"
},
答案 0 :(得分:0)
解决方案是将描述窗口属性descriptionWindowLeft
和descriptionWindowTop
设置为硬编码。由于文档,如果未设置,则描述位于鼠标指针附近
http://docs.amcharts.com/3/javascriptmaps/MapLine#descriptionWindowLeft