jjzjj

javascript - 在jointjs中制作元素 'not selectable'

我用过Jointjs我的一个项目中的图表库。1)我很想知道它是否提供了任何方法来限制用户不玩图表的元素。我的意思是:用户将能够将图表视为图像,而不是像调整大小、更改位置、拖动链接等那样与其进行交互。2)我的应用严重依赖它。虽然我已经解决了自动布局的问题,但是使用Jointjs有可能吗,我们可以告诉lib我们想要这些元素和东西吗,请帮助我们用最合适的、不冲突的元素和最少的元素制作图表如果链接是连续的直线,则相互碰撞以及与其路径中的元素发生碰撞的链接数?3)最后,我想知道我们是否可以检查链接是否与其他元素或同一图表中的其他链接发生冲突。我知道在元素的情况下是可能的。if(element1.

javascript - 如何使 jointjs 文件响应?

我刚刚发现了javascript库JointJs,我用纸和矩形实现了一个图形。但是,当我减小浏览器大小时,我无法使其响应,我的图形无法正确显示。如何使用jointjs使我的论文具有响应性? 最佳答案 您最初可以将纸张设置为与其包含元素相同的尺寸,但这只会在创建纸张时进行初始计算。如果您想在调整浏览器大小时更改纸张大小,则需要对调整大小事件使用react。首先,您需要将overflow设置为hidden在您的容器上,否则它的尺寸将拉伸(stretch)以适合其子级,并且如果您缩小浏览器它也不会缩小。#modelCanvas{overf

javascript - 如何在 JointJS 中交互式创建链接

我想以交互方式向基于JointJS的图形添加链接。我的想法是在pointerdown上创建一个小的临时节点,并带有从原始节点到该临时节点的链接,将其拖到另一个节点的顶​​部和pointerup上创建删除临时链接和节点的真实链接。不幸的是,我不知道如何说服指针移动临时元素,而不是移动pointerdown事件发生的节点。任何的想法?谢谢!vartmp_obj;paper.on('cell:pointerdown',function(cellView,evt,x,y){if(evt.button==1){//Freezetheselectednodesoitdoesnotmovepaper

javascript - Joint.js 在两篇论文之间拖放元素

我正在两篇论文之间实现拖放操作。但是由于我的html正文中有两篇论文,所以我坚持拖动元素的偏移量与光标位置的同步。我对css的经验非常少,这可能会导致问题元素的定位。用例:-用户单击纸2中的元素并开始拖动并转到纸1。在Pointerup上,该元素的克隆被添加到纸1中光标在纸1中的位置。我处理这个问题的策略是:-当用户点击mousedown时1.动态创建div2.创建第三张纸,在新的div中称它为“flypaper”复制要克隆的元素,并将其添加到“flypaper”3.创建一个mousemove监听器,它会用鼠标移动包含“flypaper”的div4.添加一个mouseup事件,当用户释

javascript - 如何更改 JointJS 中自定义对象的属性?

我使用JointJS库创建了一个自定义元素。该对象有两个嵌套的矩形和两个关联的文本。我想在deModel中更改他的属性...我只能通过JQUERY更改他的属性和css,通过它的ids。我想更改模型中的属性,然后更新节点以显示他的新外观。抱歉,如果我解释得不够好,我会留下一个jsFiddle->http://jsfiddle.net/y9ucn/如果您需要更多信息,请询问。谢谢。这是定义我的自定义对象的类,您可以在jsfiddle上播放示例:MyRect=joint.shapes.basic.Generic.extend({markup:['','','','','',''].join(

javascript - 如何缩放 jonitjs 图?

我注意到自http://www.jointjs.com/起,jointjs确实支持放大/缩小。但找不到任何例子。请帮助我放大/缩小jointjs在中创建的结果图的步骤? 最佳答案 JointPaper有一个名为scale()的方法。我有这个用于缩放(缩放)我的图表的实现:vargraphScale=1;varpaperScale=function(sx,sy){paper.scale(sx,sy);};varzoomOut=function(){graphScale-=0.1;paperScale(graphScale,graphS

javascript - 我可以像任何其他库一样将 JointJS 作为 AngularJS 模块注入(inject)吗?

我有一个带Angular应用程序,我需要使用这个库http://www.jointjs.com/,所以我下载了joint.min.js和joint.min.css并将它们的路由放在index.html中,但我不知道在app.js中放入什么来注入(inject)它,我不断从angular获取注入(inject)错误.这可能不是这样做的方法吗?我用谷歌搜索了很多但没有找到任何方法。我将不胜感激任何帮助,提前致谢! 最佳答案 如果您想在Angular应用程序中呈现Jointjs图表,那么这很容易做到。在我的例子中,我将Jointjs代码封

javascript - jointjs:防止通过单击链接添加顶点

我想通过双击链接来为链接添加标签。所以这是我的尝试:paper.on({'cell:pointerdblclick':function(cellView,event,x,y){if(cellView.model.isLink()){cellView.model.label(0,{position:.5,attrs:{rect:{fill:'white'},text:{text:'mylabel'}}});}},});问题是,通过双击还会同时创建一个顶点。我怎样才能防止这种情况发生?或者让用户为链接添加标签的另一种简单方法是什么? 最佳答案

javascript - Joint.js 添加带有路径类的自定义端口。对于自定义元素

我想做的是为端口和路径创建一个带有自定义类的元素,这样我就可以添加一个带有自定义路径的元素和我自己的端口标记。这样当我创建一个元素时,我将传递动态路径它的形状就像路径类的元素一样,而且我也从PortsModelInterface扩展了我也将有我自己的端口标记。整个工作是为了使svg可缩放以进行缩放。以前我将html自定义元素与我的自定义端口一起使用,它工作正常,但自定义元素的html在缩放时没有缩放vargraph=newjoint.dia.varpaper=newjoint.dia.Paper({el:$('#paper'),width:800,height:600,gridSize

javascript - JointJs - onConnect 链接事件

我正在尝试创建一个板,用户可以在其中动态添加block并将block与链接连接起来。(类似this但动态)我正在使用JointJs框架,到目前为止一切都按预期工作,但我需要在用户连接两个block时显示一些信息。我的问题是在连接block时找不到要处理的事件。我查看了thisquestion但在我的示例中,我没有链接实例来附加事件。Here你可以看看我的例子下面是block是如何添加到板上的。text属性中的ma​​gnet:true使文本可连接。我真的需要一些帮助来找到要在链接连接时处理的事件。varrect=newjoint.shapes.basic.newRect({positi
12