鍍金池/ 問答/HTML/ layui選項(xiàng)卡顯示echarts圖表只能顯示第一個

layui選項(xiàng)卡顯示echarts圖表只能顯示第一個

使用layui前端框架的選項(xiàng)卡來顯示不同的echarts圖表,從后臺獲取數(shù)據(jù)然后賦值和顯示不同的圖表

clipboard.png

然后只能顯示默認(rèn)打開的第一個標(biāo)簽頁

clipboard.png

然后點(diǎn)擊后面的選項(xiàng)卡就顯示不出來了,debug過js的方法都走過了,沒問題,百度也只能百度到bootstrap的這種問題

回答
編輯回答
朕略傻

+1,這個不是顯示不出來,是echarts圖形也是初始化出來,選項(xiàng)卡一開始只初始化了第一個,所以第一個顯示正常,其他的選項(xiàng)卡是沒有寬度的,所以跟著他一起初始化的echarts沒有寬度,點(diǎn)擊第二個選項(xiàng)卡的時候,選項(xiàng)卡跟著初始化,但是echarts還是原先的那個echarts,沒有跟著一起初始化,寬度沒改變,顯示不出來,解決方法,一個是進(jìn)入頁面,所有的選項(xiàng)卡都初始化,另一個是點(diǎn)擊選項(xiàng)卡,觸發(fā)方法,重新加載echarts,第一個方法,誰知道怎么一起把所有的選項(xiàng)卡都初始化?第二個方法,很繁瑣,自己去找點(diǎn)擊選項(xiàng)卡的點(diǎn)擊方法,我現(xiàn)在就想知道怎么初始化所有選項(xiàng)卡?

2017年9月10日 06:16
編輯回答
有點(diǎn)壞

layui的tab切換選項(xiàng)卡是有這個問題,我在做的時候也出現(xiàn)了,確實(shí)是初始化的原因,然后用了這個方法,你可以看看,代碼如下: <script>

  layui.use(['table','element','jquery'], function(){
      var table = layui.table;
      var element = layui.element;
      var $ = layui.$ //重點(diǎn)處
    
      //監(jiān)聽Tab切換,以改變iframe地址
      element.on('tab(test1)', function(data){
          var tabIndex = data.index;
          var src = $(".layui-tab-content div").eq(tabIndex).attr("src");
          $(".layui-tab-content div").eq(tabIndex).find("iframe").attr("src",src);
      });
    });

</script>

圖片描述

2018年2月23日 15:29
編輯回答
愛礙唉

一開始容器沒寬度或是隱藏的話會出現(xiàn)這個問題,
最好的解決方法還是echarts自帶resize,
在合適的時候調(diào)用下 echarts對象.resize()就行,
像是這樣

 //瀏覽器大小改變時重置大小
 window.onresize = function () {
    myChart.resize();
};
2018年6月7日 07:06
編輯回答
傻叼

您好,我看到您關(guān)于layui-tab Echarts只能顯示第一個問題。我最近也遇到了這樣的問題,想請問您解決了沒有?可以請教一下嗎?

2017年11月10日 04:06
編輯回答
空痕

點(diǎn)擊tab時初始化對應(yīng)的echarts

2017年2月16日 19:41