Google Blockly - 将工具箱附加到单独的div

时间:2017-07-31 11:44:32

标签: javascript html css canvas blockly

我一直在尝试使用Blocky来开发一个简单的基于动画的应用程序并面对这个问题。正如文档中所提到的,我创建了工具箱的xml树结构,然后当我创建一个新的Blockly实例时,它会将工具箱附加到该特定的div。

例如:

var workspace = Blockly.inject('blocklyDiv', {
            media: './media/',
            toolbox: document.getElementById('toolbox'),
            trashcan: true
        }); 

虽然它运作良好,但它并不能让我们决定我们想要保留工具箱的地方。在我的应用程序中,我想将工具箱与工作区分开(在一个单独的div中),但我无法在他们的文档中找到任何指南。

有人可以帮我吗?

1 个答案:

答案 0 :(得分:2)

回答我自己的问题,因为我没有得到任何答复:)

截至目前,blockly没有选项将工具箱保留在其自己的容器中,而不是它默认创建的injectDiv。因此,解决方法是等待Blockly创建injectDiv,flyout,工作区,然后动态更改injectionDiv中工具箱的位置。

您还可以在injectDiv中附加所需的任何其他元素,并动态更改其位置。您可能需要根据您的操作更改某些核心值。基本的想法是你需要将所有内容保存在injectionDiv中:)