国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

兩個echarts地圖聯動高亮區域

mcterry / 1651人閱讀

摘要:項目要求左右兩張地圖能夠在鼠標懸浮的時候高亮部分聯動,曾嘗試了不好使,所以自己寫了這段代碼。遇見的坑使用引發,會發現只能顯示很短的時間,所以我鼠標移入地圖時,給另一個地圖設置和。而獲取的時候會成為數組,也許是為了滿足多個的需求。

項目要求左右兩張地圖能夠在鼠標懸浮的時候高亮部分聯動,曾嘗試了connect不好使,所以自己寫了這段代碼。代碼思路為:

鼠標移入地圖時,另一側的地圖根據鼠標懸浮獲取到的區域name使該區域高亮;

鼠標移入地圖時,根據鼠標在地圖的坐標位置,使另一側的地圖tooltip懸浮于獲取的坐標位置,保證兩張地圖的tooltip的位置相同。


遇見的坑:

使用dispatchAction引發showTip,會發現tooltip只能顯示很短的時間,所以我鼠標移入地圖時,給另一個地圖設置tooltip[0].alwaysShowContent=truetooltip[0].triggerOn="none"。官網要求使用dispatchAction引發showTip需要設置triggerOn="none",但是我試了有沒有都行,有alwaysShowContent=true就行;

在設置tooltip的時候,使用的是對象。而獲取的時候tooltip會成為數組,也許echarts是為了滿足多個tooltip的需求。

函數只要傳進去echarts實例就行,代碼如下:

//前面的代碼省略直接調用,傳入echarts實例對象
connectMap(chart1,chart2);

function connectMap(chart1,chart2){
    //當鼠標移入左側的地圖上
        chart1.on("mouseover",function(target){
            
            var option=chart2.getOption();
            option.tooltip[0].alwaysShowContent=true;
            option.tooltip[0].triggerOn="none";
            chart2.setOption(option,true);
            chart2.dispatchAction({
                type:"downplay",
                seriesName:"rightmap"
            })
            chart2.dispatchAction({
                type:"highlight",
                name:target.name,
            })
        
    })
    chart1.on("mousemove",function(target){
        
        chart2.dispatchAction({
            type:"showTip",
            name:target.name,
            x:target.event.offsetX,
            y:target.event.offsetY
        })
    })
    chart1.on("mouseout",function(){
        var option=chart2.getOption();
        option.tooltip[0].alwaysShowContent=false;
        option.tooltip[0].triggerOn="mousemove";
        chart2.setOption(option,true);
        chart2.dispatchAction({
            type:"hideTip"
        })
    })

    //當鼠標移到右邊的地圖
    chart2.on("mouseover",function(target){
        var option=chart1.getOption();
        option.tooltip[0].alwaysShowContent=true;
        option.tooltip[0].triggerOn="none";
        chart1.setOption(option,true);
        chart1.dispatchAction({
            type:"downplay",
            seriesName:"rightmap"
        })
        chart1.dispatchAction({
            type:"highlight",
            name:target.name,
        })
        
    })
    chart2.on("mousemove",function(target){
        
        chart1.dispatchAction({
            type:"showTip",
            name:target.name,
            x:target.event.offsetX,
            y:target.event.offsetY
        })
    })
    chart2.on("mouseout",function(){
        var option=chart1.getOption();
        option.tooltip[0].alwaysShowContent=false;
        option.tooltip[0].triggerOn="mousemove";
        chart1.setOption(option,true);
        chart1.dispatchAction({
            type:"hideTip"
        })
    })
}

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/90385.html

相關文章

  • vue地圖可視化 ArcGIS篇(3)

    摘要:不建議底圖選擇中存在兩種不同坐標體系,如下圖坐標存在明顯的偏差,火星坐標在采用坐標系的地圖上位置偏上彩色中國天地圖全球衛星地圖例如我們使用的類進行查找,返回的數據都是國際坐標,因此必須進行偏差糾正。 ArcGIS for javascript開發心得 本次實例中采用ArcGIS for javascript3.24版本,由于版本3與4在API等存在較大區別,就不一一列舉,詳細區別看官方...

    oogh 評論0 收藏0
  • echarts地圖制作】下鉆到鄉鎮/街道級別的

    摘要:需求展示西安市各區縣的地圖,點擊各區縣下鉆到各鄉鎮街道,只能內網環境使用,不可用通過百度高德地圖來實現。利用展示自定義的地圖關于具體如何導入格式數據到的方法,可以參考官方示例。 需求 展示西安市各區縣的地圖,點擊各區縣下鉆到各鄉鎮/街道,只能內網環境使用,不可用通過百度/高德地圖來實現。 解決 利用地圖數據生成區域的geojson 網絡上大部分地圖數據只是到省市,最多到區縣,再往下的數...

    寵來也 評論0 收藏0
  • ECharts 輪流高亮中國地圖各個省份

    摘要:最早我是想通過方法去改變選中的省份,但是沒有起作用,如果你知道這個方法怎么實現,麻煩你可以告訴我。指定圖表的配置項和數據中國默認高亮安徽省安徽使用剛指定的配置項和數據顯示圖表。 最早我是想通過dispatchAction方法去改變選中的省份,但是沒有起作用,如果你知道這個方法怎么實現,麻煩你可以告訴我。我實現的方法是另外一種。 dispatchAction({ type: ge...

    ivan_qhz 評論0 收藏0

發表評論

0條評論

mcterry

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<