双人火灾事件

时间:2015-11-13 13:23:01

标签: javascript jquery svg

我有一个带有两个svg圈子的数据结构。我在我的文档中添加了一个监听器,以便在每次单击时在同一个位置创建2个圆圈。然后我希望其中一个圆圈跟随我的鼠标,直到我再次单击。此后,类似地在每次点击时创建数据结构。我无法理解如何禁用第一次单击的行为,然后在第二次单击后重新启用。我该怎么做?

document.click(function(e){
    c1 = document.circle(e.offsetX,e.offsetY,8);//create a circle 1st
    document.unclick();
    document.click(function(ev){
        c2 = document.circle(ev.offsetX,ev.offsetY,8);
        document.line(c1.attr("cx"),c1.attr("cy"),c2.attr("cx"),c2.attr("cy"));
        }
    document.unclick();
    }

现在我想再次激活第一个事件。我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

您可以使用一次点击事件和一次计数器变量

var counter=0, c1, c2;
document.click(function(e){
    counter++;
    switch(counter) {
       case 1:
           c1 = document.circle(e.offsetX,e.offsetY,8);//create a circle 1st
       break;
       case 2:
           c2 = document.circle(ev.offsetX,ev.offsetY,8);
           document.line(c1.attr("cx"),c1.attr("cy"),c2.attr("cx"),c2.attr("cy"));
           counter = 0;
       break;
    }
}
相关问题