2017-10-14 37 views
0

jsPlumb连接问题,如果div与CSS transformed (transform: translate(50px, 10px);)
实施例:
HTMLjsPlumb连接,如果div被css转换

<div class="c1"> 
<div id="a1"> 
test1 
</div> 
</div> 

<div class="c2"> 
<div id="a2"> 
test2 
</div> 
</div> 

CSS

.c1{ 
position: absolute; 
width: 50px; 
height: 50px; 
background: #FF0000; 
transform: translate(50px, 50px); 
} 
.c2{ 
position: absolute; 
width: 50px; 
height: 50px; 
background: #FF0000; 
transform: translate(150px, 100px); 
} 

JS

$("#click1").click(function(){ 
    jsPlumb.connect({ 
    source: "a1", 
    target: "a2" 
    }); 
}); 

https://jsfiddle.net/fara/fc6k8fqn/1/的jsfiddle
有什么方法可以修复/解决?

回答

0

避免使用变换使用位置值,而不是(左,上,等等。)

jsPlumb.setContainer(document.getElementById("body")); 
 
    
 
$("#click1").click(function() { 
 

 
\t \t jsPlumb.connect({ 
 
    \t source: "a1", 
 
    \t target: "a2" 
 
    }); 
 
});
.c1{ 
 
    position: absolute; 
 
    width: 50px; 
 
    height: 50px; 
 
    background: #FF0000; 
 
    left: 50px; 
 
    top: 50px; 
 
    /* transform: translate(50px, 50px); */ 
 
} 
 
.c2{ 
 
    position: absolute; 
 
    width: 50px; 
 
    height: 50px; 
 
    left: 100px; 
 
    top: 150px; 
 
    background: #FF0000; 
 
    /* transform: translate(150px, 100px); */ 
 
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/jsPlumb/2.5.5/js/jsplumb.min.js"></script> 
 
<div id="body"> 
 
    <button id="click1">click</button> 
 

 
    <div class="c1"> 
 
    <div id="a1">test1</div> 
 
    </div> 
 

 
    <div class="c2"> 
 
    <div id="a2">test2</div> 
 
    </div> 
 
</div>

+0

这不是解决办法,如果我可以改变这个CSS值,我也不会问题。我使用另一个库,并且此库使用CSS转换移动对象。 –

+0

@FarhodHojiev https://github.com/jsplumb/jsPlumb/issues/669 – jgatjens

+0

清楚,谢谢,我会改变我的代码。 –