如何通过点击另一个元素来“撤消”mousedown所做的事情?

时间:2013-12-10 03:33:46

标签: javascript raphael

这是鼠标按下的功能:

one_element.mousedown(function(){
    this.attr({stroke:"#ffffff"});

    el2.attr({stroke:'#ffffff'});
    el3.attr({stroke:'#ffffff'});  
});

并且我想在单击另一个元素时撤消它。基本上,笔划将返回黑色,点击它是白色。 我很感激你的帮助,我知道这是一个基本的问题,但它已经困扰了我好几个小时

1 个答案:

答案 0 :(得分:0)

你的意思是这样的:

two_element.mousedown(function(){
    this.attr({stroke:"#000000"});

    el2.attr({stroke:'#000000'});
    el3.attr({stroke:'#000000'});  
});

假设您的其他元素名为two_element


修改

您可以将此代码放在一个函数中,并根据所选的元素打开/关闭它。你的主要功能看起来像这样:

function myFunction(isOn)
{
  if(isOn){ 
     el1.attr({stroke:'#ffffff'});
     el2.attr({stroke:'#ffffff'});
     el3.attr({stroke:'#ffffff'}); 
  }else{
     el1.attr({stroke:'#000000'});
     el2.attr({stroke:'#000000'});
     el3.attr({stroke:'#000000'}); 
  }
}

元素一可以通过以下方式启用:

one_element.mousedown(myFunction(true));

元素二通过以下方式关闭:

two_element.mousedown(myFunction(false));