Dygraph 未显示在折叠的 jQuery 移动可折叠小部件上

Dygraph not shown on collapsed jQuery mobile collapsible widget

我有多个 dygraphs 图,我想将它们分组到一个可折叠的 jQuery 小部件中,这样一个人只能显示一些图表组。可悲的是,这仅在可折叠div在开始时展开时才有效,如果我开始折叠,展开后将不会绘制图形。

虽然不是真正的解决方案,但我可以从展开所有元素开始。但是,如果折叠一些图表并在其间切换页面,则会出现同样的问题。

这是显示问题的 jsFiddle - 设置 data-collapsed="false" 将绘制图形。

当小部件展开时,您可以尝试在所有图表上调用 g.resize()g.updateOptions()。这些应该是空操作,但它们的作用是强制 dygraphs 重新计算其容器的大小 <div>,由于小部件的扩展,容器的大小已发生变化。

据我所知,JavaScript 无法判断 DOM 元素何时变为可见或以 window 调整大小以外的方式调整大小。这也会影响其他 JS 库。