2012-12-07 49 views
-2

我正在使用jsplumb创建流式聊天。一旦流程图创建完成并由用户确认,我想让创建的结构不可编辑。 为此,已过度添加到包含流程图的父级,但鼠标点击仍在流程图上发生。在JavaScript中添加叠加

如何 - 在添加叠加层后,不允许在这些组件上发生鼠标点击。

谢谢

+0

这是没有足够的信息来回答你的问题。我建议提供一个工作[jsfiddle](http://jsfiddle.net) –

+0

首先,我会让你的覆盖层变成一个明亮的颜色,这样你就可以确定它在正确的位置。确保z-index足够高,以便它出现在前面,然后尝试附加一个单击事件处理程序,它调用'event.stopPropagation()'的javascript等价物。 – NibblyPig

回答

0

添加处理,以燕子所有点击活动覆盖:

document.getElementById('yourOverlayID').onclick = function() { 
    return false; 
}; 

请记住,任何人都可以简单地通过控制台中删除该覆盖,并继续修改图表,如果他们的愿望。您可能需要查看jsplump API来获取相关信息,例如unbind()

+0

感谢您的信息。 我也想禁用鼠标拖动,以便用户不会拖动连接器并连接到另一个端点 –

+0

一旦用户确认他已完成编辑,我正在执行下面的代码(文档的类似代码.onmousedown,document.onmouseup,document.onmousedrag),但叠加层后面的组件仍然在接收鼠标事件。 (){ document.onmouseup = null; 返回false; }' 我错过了什么吗? –

+0

@NagendarReddy不是叠加层,像这样的新插件很可能不会将任何事件绑定到“文档”,也不以这种方式绑定它们。 – jbabey