diff --git a/doc/doc.html b/doc/doc.html index 12ea8a88d77c3a906deb3a792325fc561bd21695..7e2e95ac1232724cc7ab6acbe352def9c1ba1566 100644 --- a/doc/doc.html +++ b/doc/doc.html @@ -915,9 +915,9 @@ require(['echarts'], function(ec){ 默认只设定了图例文字颜色(详见textStyle) - {boolean} selectedMode + {boolean | string} selectedMode true - 选择模式,默认开启图例开关 + 选择模式,默认开启图例开关,可选single,multiple {Object} selected @@ -2126,7 +2126,7 @@ indicator : [ 选中是扇区偏移量 - {string} selectedMode + {boolean | string} selectedMode null 饼图,地图 选中模式,默认关闭,可选single,multiple diff --git a/doc/example/map11.html b/doc/example/map11.html index 24ecf9d1c23dd53a6d15c2b9601bfca52ed996bc..3f5b3ce8b883d230a66b89cc3a3bd39845e512a6 100644 --- a/doc/example/map11.html +++ b/doc/example/map11.html @@ -92,6 +92,7 @@ option = { orient: 'vertical', x:'left', data:['北京 Top10', '上海 Top10', '广州 Top10'], + selectedMode: 'single', selected:{ '上海 Top10' : false, '广州 Top10' : false diff --git a/src/component/legend.js b/src/component/legend.js index 11b1bf7eb156295410087828dbb8d12e5d863278..787afbcfe5e17817a31048d7c3f5bef56d03cb9f 100644 --- a/src/component/legend.js +++ b/src/component/legend.js @@ -156,8 +156,8 @@ define(function (require) { textFont: font, textBaseline: 'top' }, - hoverable : legendOption.selectedMode, - clickable : legendOption.selectedMode + hoverable : !!legendOption.selectedMode, + clickable : !!legendOption.selectedMode }; if (legendOption.orient == 'vertical' @@ -503,11 +503,19 @@ define(function (require) { function _legendSelected(param) { var itemName = param.target._name; + if (legendOption.selectedMode === 'single') { + for (var k in _selectedMap) { + _selectedMap[k] = false; + } + } _selectedMap[itemName] = !_selectedMap[itemName]; messageCenter.dispatch( ecConfig.EVENT.LEGEND_SELECTED, param.event, - {selected : _selectedMap} + { + selected : _selectedMap, + target : itemName + } ); }