2

このメソッドを使用してDiagram.makeSVG()、ダイアグラムから SVG を生成しています。その後、このコードを使用してSVGを新しい空白のタブに追加しました(これdiagramは私のDiagram Objectです):

function print() {
  var newTab = window.open(),
      svg  = aclDiagram.makeSVG({
        some: options
      });
  newTab.document.body.appendChild(svg);
}

Chrome と Firefox では問題なく動作しました。しかし、IE11では機能しませんでした。

デバッグを行ったところ、ブラウザのせいだけではないことがわかりました。SVG を生成するとき GoJS は適切な SVG を生成していません (私にはそう思われます) デバッガーでその Type を見ると

SVGSVG要素

私が言ったように、FFとChromeでうまく動作します。これは、Chrome と Firefox が非公式の HTMLElement タイプを容認し、「うーん、とにかく追加してみよう」と言うのとは対照的に、IE 11 が「うわー、この要素を追加する方法はありません。それはいくつかのタイプでさえありません。 HTMLElement の ". それとも、ここで何か問題がありましたか?

現在、IE で動作させるための回避策を見つけようとしています。しかし、どうにかオブジェクトの型を変更する方法を見つけることができません。

助言がありますか?前もって感謝します。

4

3 に答える 3

1

これはIE Edgeでうまくいくようです:

var svg = myDiagram.makeSvg({
    scale: 0.5
  });
svg.style.border = "1px solid black";
document.body.appendChild(svg);

http://codepen.io/simonsarris/pen/qdgeGR?editors=101

さらに言えば、SVG イントロ ページの作成にあるすべての例は、IE エッジで問題なく動作するようです。

他にやっていることがありますか?

于 2015-08-07T13:55:06.530 に答える