$(document).on('mouseup', '.agent-wrapper', function(info){
console.log(info); // It works fine
console.log(this); // It works fine too
});
.agent-wrapper
是所有jsPlumb对象的元素包装器。
$(document).on('mouseup', 'div.node', function(info){
console.log(info); // It doesn't work
console.log(this); // It doesn't work too
});
如何在" mouseup"的jsPlumb-wrapper中接收元素节点?事件
HTML
<div id="flume-AGENT-1" class="agent-wrapper" index="0">
<div data-nodetype="source" class="w node jsplumb-draggable jsplumb-droppable">
Element 1
<div class="ep"></div>
</div>
<div data-nodetype="source" class="w node jsplumb-draggable jsplumb-droppable">
Element 2
<div class="ep"></div>
</div>
</div>
当我&#34; mousedown&#34;一个光标放在第一个元素和&#34; mouseup&#34;它在第二个元素 - 我无法在JavaScript中获得元素目标。 ...如何获得event.target。
似乎jsPlumb取消绑定与其包装内的元素相关的所有事件......但我需要接收此元素。怎么样?
答案 0 :(得分:1)
似乎你绑定了那些&#34; .node&#34; div使用jsPlumb 源或目标方法,这些方法将覆盖jQuery鼠标向上和鼠标按下。因为jsPlumb处理特定&#34; .node&#34;的连接创建。鼠标事件上的div。
因此,您无法在同一元素上绑定jsPlumb和jQuery事件,您需要像在#34; .agent-wrapper&#34;上那样在父节点上处理这些事件。