0

我正在努力改变

var brd2 = JXG.JSXGraph.initBoard('box', {boundingbox: [-8.75, 2.5, 8.75, -2.5]});

作为

var brd2 = JXG.JSXGraph.initBoard(this.$('#box'), {boundingbox: [-8.75, 2.5, 8.75, -2.5]});

由于动态元素是在主干视图中创建的,因此我需要为每个带有 id “box”的元素初始化 JSXGraph。

4

1 回答 1

0

通过以下 hack,可以将对象而不是 id 传递给 JSXGraph。首先,您需要一个不可见的 div,例如 id 为“dummy”。然后用这个虚拟 id 初始化电路板,然后我们必须进行更正。让我们进一步假设

var board = JXG.JSXGraph.initBoard('dummy', {axis:false,
    boundingbox: [-10,30,10,-10], keepaspectratio:false});

var obj = document.getElementById('box'); // or this.$('#box')

board.removeEventHandlers();
board.container = 'box';
board.containerObj = obj;
//
// Supply the dimensions of the box
board.renderer = new JXG.SVGRenderer(obj, {width: 800, height: 800});
board.setBoundingBox([-10,30,10,-10], false);
board.addEventHandlers();

请注意,在 initBoard() 中指定axis:truegrid:true将不起作用。

希望有帮助,阿尔弗雷德

于 2015-03-10T11:27:39.987 回答