“无法读取未定义的属性” - jvectormap

时间:2017-07-27 16:48:24

标签: javascript html css frontend

我有这样的代码:

    var dataVal = {
  "PL-WP": 'red'
}

var map = $('#map').vectorMap({map: 'pl_merc',
  backgroundColor:'#c9c9c9',
  zoomOnScroll:false,
  series: {
    regions: [{
      scale: {
        'red': 'red',
        'blue': 'blue'
      },
      attribute: 'fill',
      values: dataVal
    }]
  },
  onRegionClick(e,code) {
    dataVal[code] = 'blue';
    map.series.regions['values'].setValues(dataVal);
  }
});

该片段最后一行的目标是动态更改“值”属性。不幸的是,代码不起作用,并提供“未定义”的“无法读取属性”区域的错误。有什么方法可以解决它吗?

Screen

1 个答案:

答案 0 :(得分:0)

您未定义的原因是因为var map对象是一个jquery对象。因此,当您使用map.series时,它没有该属性,并且未定义。尝试控制map.data()并查看vectorMap是否向DOM节点添加任何对象prop。所以你可以访问那个