【问题标题】:JQuery / JsPlumb: toggle "hidden/visible" anchor with checkbox starting from HiddenJQuery / JsPlumb:使用从隐藏开始的复选框切换“隐藏/可见”锚
【发布时间】:2015-01-30 17:13:57
【问题描述】:

我使用 JsPlumb 库写了一些东西。

我得到了三个开始使用的元素

`display:none;` 

然后我使用典型的 Jquery 代码使它们出现标记一个复选框:

input type="checkbox" id="nameCB" name="nameCB" value="on"

$('#nameCB').click(function(){
    this.checked?$('#elementID').show(1000):$('#elementID').hide(1000);

我的问题是,如果我为以下元素之一设置锚点:

jsPlumb.addEndpoint('elementID', {anchor:"BottomCenter" }, endpointOptions );

锚点(默认情况下为灰色圆圈)始终可见。 我想让它仅在它连接的元素可见时才可见。

更新:

I solved creating a connection only when the checkbox is flagged an detaching it otherwise: 

$('#ckFI').click(function(){
    this.checked?$('#firenze').show(1000):$('#BBB').hide(1000);
    this.checked?apparizione():scomparsa(); 
 });
function apparizione() {
    jsPlumb.connect({
  source:"AAA", 
  target:"BBB",
  anchors:["Top", "Bottom" ],
});
}
function scomparsa() {
    jsPlumb.detach({source:"AAA", target:"BBB"});
}

【问题讨论】:

    标签: javascript jquery checkbox show-hide jsplumb


    【解决方案1】:

    您没有提及 endpointOptions 中指定的内容,因此我将继续建议将您的选项修改为以下内容:["Dot", { radius: 1, cssClass: 'hidden' }],其中 hidden 可以是带有 display:none; 的类。您甚至可以为端点类型指定“空白”,以使其隐藏(我没有尝试过后者,但在文档中提到了)。

    稍后在连接项目时,您可以选择显示您连接的端点 (一种方法是使用jsPlumb.getEndpoints(element),它将为您提供指定元素的端点列表。如果您需要检查端点是否有连接,您可以导航到连接属性)。这通常取决于您的实现。

    希望对你有帮助!

    P.s.:您目前使用的是哪个版本的 jsPlumb?

    【讨论】:

      猜你喜欢
      • 2017-10-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-10
      • 2021-04-19
      • 2013-03-23
      相关资源
      最近更新 更多