Element圖表初始大小及窗口自適應(yīng)實(shí)現(xiàn)
最近在做一個輪播圖,使用的是element的Carousel走馬燈,每一個走馬燈里是eachrts圖,開始頁面加載的時候發(fā)現(xiàn)echarts圖并不能自適應(yīng),開始以為是走馬燈的問題,后來發(fā)現(xiàn)不是
不知道大家在用echarts的時候有沒有遇到這種情況:
最開始盛放圖表的容器是隱藏(或者tab切換)的,然后再顯示的時候,里面echarts圖表就沒用初始大小了。比如我遇到的這種:
有童鞋這會兒估計看出原因了:因?yàn)樵刈畛蹼[藏,再顯示之后沒有自動變化寬度,所以echarts圖表沒有初始寬高,官方文檔的說法:
請注意:這個寬度在一些情況下設(shè)置百分比 是沒有作用的,所以得設(shè)置為具體數(shù)字或者用js賦值,類似這種:
$('main').style.width = (document.body.clientWidth-300)*0.6+'px';
P.S:這里沒說高度是因?yàn)槿绻唤o容器固定高度,圖表是完成不顯示的(高度為0的容器肯定不會顯示哦)
那么如果想設(shè)置echart圖表隨窗口的縮放變化呢?以下兩種寫法都可以:
第一種:
window.onresize = myChart.resize; // .resize后不用加括號哦,一般如果window resize的時候不設(shè)置其他,可以這樣寫
第二種:
window.onresize = function () { this.myChart.resize(); // .resize后加括號哦,這里還可以寫其他的事件 };
echarts官方文檔寫的很詳細(xì)哦,需要的童鞋自己去翻閱。
具體到我的代碼,我是這樣實(shí)現(xiàn)的,因?yàn)槲业娜萜魇前俜直葘懙模晕业膶?shí)現(xiàn)方式如下:
即是dom節(jié)點(diǎn)渲染以后,調(diào)用echarts實(shí)例的resize()方法;
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
v-distpicker地區(qū)選擇器組件使用實(shí)例詳解
代碼添加了一個vDistpickerHandle的事件處理函數(shù)對地區(qū)選擇器中的數(shù)據(jù)進(jìn)行處理,將數(shù)據(jù)存儲到form對象的相應(yīng)屬性中,方便數(shù)據(jù)提交,這篇文章主要介紹了v-distpicker地區(qū)選擇器組件使用,需要的朋友可以參考下2024-02-02關(guān)于vue-cli-service:command?not?found報錯引發(fā)的實(shí)戰(zhàn)案例
這篇文章主要給大家介紹了關(guān)于vue-cli-service:command?not?found報錯引發(fā)的相關(guān)資料,文中通過實(shí)例代碼將解決的過程介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2023-02-02vue2.0嵌套路由實(shí)現(xiàn)豆瓣電影分頁功能(附demo)
這篇文章主要介紹了vue2.0嵌套路由實(shí)現(xiàn)豆瓣電影分頁功能(附demo),這里整理了詳細(xì)的代碼,有需要的小伙伴可以參考下。2017-03-03Vue中 v-if 和v-else-if頁面加載出現(xiàn)閃現(xiàn)的問題及解決方法
vue中v-if 和v-else-if在頁面加載的時候,不滿足條件的標(biāo)簽會加載然后再消失掉,如果要解決這個問題,下面小編給大家?guī)砹藢?shí)例代碼,需要的朋友參考下吧2018-10-10Vue.js實(shí)現(xiàn)一個自定義分頁組件vue-paginaiton
這篇文章主要為大家詳細(xì)介紹了Vue.js實(shí)現(xiàn)一個自定義分頁組件vue-paginaiton的具體代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-09-09Vue3利用組合式函數(shù)和Shared Worker實(shí)現(xiàn)后臺分片上傳
這篇文章主要為大家詳細(xì)介紹了Vue3如何利用組合式函數(shù)和Shared Worker實(shí)現(xiàn)后臺分片上傳(帶哈希計算),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-10-10