javascript - 当切换标签时,谷歌图表会失去它们的风格

标签 javascript css charts

我这里有标签内容

<div id="views" class="tab">
  <button class="tablinks" onclick="openTab(event, 'energy')" id="defaultOpen">Energía</button>
  <button class="tablinks" onclick="openTab(event, 'electricity')">Electricidad</button>
</div>

<div id="results">
  <div id="ajax_loader"></div>
  <div id="energy" class="tabcontent">
    <table align="center">
      <tr>
        <td>
          <div id="chart_div1" style="width: 600px; height: 400px;" class="chart"></div>
        </td>
        <td>
          <div id="chart_div2" style="width: 600px; height: 400px;" class="chart"></div>
        </td>
        <td>
          <div id="chart_div3" style="width: 600px; height: 400px;" class="chart"></div>
        </td>
      </tr>
    </table>
  </div>

  <div id="electricity" class="tabcontent">
    <table align="center">
      <tr>
        <td>
          <div id="chart_div4" style="width: 600px; height: 400px;" class="chart"></div>
        </td>
        <td>
          <div id="chart_div5" style="width: 600px; height: 400px;" class="chart"></div>
        </td>
      </tr>
    </table>
  </div>
</div>

使用相应的脚本

<script>
    // Get the element with id="defaultOpen" and click on it
    document.getElementById("defaultOpen").click();

    function openTab (evt, tabName) {
      // Declare all variables
      var i, tabcontent, tablinks;

      // Get all elements with class="tabcontent" and hide them
      tabcontent = document.getElementsByClassName("tabcontent");
      for (i = 0; i < tabcontent.length; i++) {
          tabcontent[i].style.display = "none";
      }

      // Get all elements with class="tablinks" and remove the class "active"
      tablinks = document.getElementsByClassName("tablinks");
      for (i = 0; i < tablinks.length; i++) {
          tablinks[i].className = tablinks[i].className.replace(" active", "");
      }

      // Show the current tab, and add an "active" class to the button that opened the tab
      document.getElementById(tabName).style.display = "block";
      evt.currentTarget.className += " active";
    }
</script>

在每个选项卡中,我分别有 3 个和 2 个图表,当我绘制图表时,它们在事件选项卡中看起来不错,但是当我在第二个选项卡中切换时,反之亦然,图表变小,直到我使用一些工具刷新它们在网络工具中(用于重新计算图表中的值的按钮)。我错过了什么或做错了什么?

最佳答案

已修复:切换标签时我会重新绘制图表。

关于javascript - 当切换标签时,谷歌图表会失去它们的风格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46097835/

相关文章:

css - 全屏响应式背景图片

reporting-services - SSRS范围条形图,无数据时不同颜色

charts - 无法隐藏谷歌图表趋势线上的工具提示(方程)

javascript - mdn 中的reduce 示例说明

javascript - PHP AJAX 发布/获取

html - 链接到网站的另一部分时如何调整窗口位置?

html - 全屏背景视频不会自动播放

javascript - 如何使用 jQPlot 在 yaxis = 0 处画一条线?

javascript - jsPDF autoTable columnWidth 包装切断表格

javascript - 如何检测两个数组之间的对象差异?