JSXGraph 元素消失

JSXGraph elements disappearing

我刚开始使用 JSXGraph。我有一些代码,一旦我开始移动它们,板的内容就会立即消失。这只发生在 Firefox (47.0) 上,而代码在 Chrome 和 MSIE 上运行良好。我在 Windows 7 pro,JSXGraph 版本是 0.99.4。

下面是一个演示问题的最小示例。只需加载页面(在 Firefox 上)并四处移动该点。我知道如果去掉 table 就可以解决这个问题,但我认为 HTML 仍然有效。我想知道我做错了什么。

<!DOCTYPE html>
<html>
  <head>
    <meta charset="iso-8859-1">
    <link rel="stylesheet" type="text/css" href="jsxgraph.css" />
    <script type="text/javascript" src="jsxgraphcore.js" charset="utf-8"></script>
  </head>
  <body>
    <table>
      <tr>
        <td><div id="box" class="jxgbox" style="width:180px; height:180px;"></div></td>
        <td style="width:20%;">&nbsp;</td>
        <td><div class="jxgbox" style="width:360px; height:360px;"></div></td>
      </tr>
    </table>
    <script type="text/javascript">
     var board = JXG.JSXGraph.initBoard("box", {
       boundingbox: [-10, 10, 10, -10],
       grid: false,
       axis: false
     });
     var ax = board.create('axis', [[0, 0], [1, 0]]);
     ax.removeAllTicks();
     var p1 = board.create("point", [3, 2]);
    </script>
  </body>
</html>

这似乎是 Firefox 中的一个错误。如果

,JSXGraph 板将正常工作
  • 包含 JSXGraph 板的 table 单元格是其行中最大(高度)的单元格
  • 或者如果此 table 单元格具有 valign=top.
  • 属性

如果 JSGraph <div> 在其 table 单元格内垂直浮动,Firefox 将失去对 SVG 元素的控制 - 出于某种未知原因。一个简单的解决方法是使用 canvas 作为渲染引擎而不是 SVG。

 var board = JXG.JSXGraph.initBoard("box", {
   renderer: 'canvas',
   boundingbox: [-10, 10, 10, -10],
   grid: false,
   axis: false
 });