使用echarts弄一个全国地图实现点击选择其省份获取省份值后点击空白处回到全国地图
效果:
前:
点击省份:
点击空白处:
代码:echarts.on事件 jquery的on事件
地图颜色范围为['white','blue']对应[0,max]
-
chinaChart.on('click', function (params) {
-
vm.chinaOption.subTitle = params.name
-
//将除点击外的省份赋值为0,使其显示颜色为白色
-
data.forEach(item => {
-
item.value = item.name == params.name ? params.value : 0
-
console.log(item)
-
//重新setoption
-
chinaChart.setOption(option);
-
})
-
-
})
-
function tt() {
-
var a = data1
-
vm.chinaCharts(vm.chinaData(a).dNumList, vm.chinaOption.color, data1);
-
}
-
$('#china_chart').on('click',function () {
-
console.log(1)
-
event.preventDefault()
-
if (!f ) {
-
tt()
-
}
-
console.log(o)
-
f = false
-
console.log(f)
-
})
因为通过jquery给地图容器绑定点击事件,在点击地图部分时也会触发到该点击事件,所以需要对点击事件进行判断,f为true即为点击地图部分则不调用tt,相反则调用tt重新赋值恢复到全国地图,该方式存在一个问题,click事件会出现点击一次执行多次的问题,所以需要在地图方法的一开始就清除上一轮的监听事件
chinaChart.off("click");
-
$('#china_chart').off('click').on('click',function () {
-
console.log(16)
-
})
最后,通过该方法实现的效果还存在一个问题:当点击该省份后再点击回全国鼠标再次经过地图时,上一轮点击过的省份颜色会再次改变,通过以下方式解决:
-
chinaChart.dispatchAction({
-
type: 'unselect',
-
name: str,//str是上一轮点击的省份名称,为全局变量
-
})
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhiagcki
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
微信运动停用后别人还能看到步数吗
PHP中文网 07-22