Javascript 如何";撤销;mousedown通过单击另一个元素做了什么?
这就是鼠标按下所做的:Javascript 如何";撤销;mousedown通过单击另一个元素做了什么?,javascript,raphael,Javascript,Raphael,这就是鼠标按下所做的: one_element.mousedown(function(){ this.attr({stroke:"#ffffff"}); el2.attr({stroke:'#ffffff'}); el3.attr({stroke:'#ffffff'}); }); 我想在单击另一个元素时撤消它。基本上,笔划将恢复为黑色,单击后为白色。 我非常感谢您的帮助,我知道这是一个基本问题,但它已经困扰了我好几个小时了您的意思是: two_element.mo
one_element.mousedown(function(){
this.attr({stroke:"#ffffff"});
el2.attr({stroke:'#ffffff'});
el3.attr({stroke:'#ffffff'});
});
我想在单击另一个元素时撤消它。基本上,笔划将恢复为黑色,单击后为白色。
我非常感谢您的帮助,我知道这是一个基本问题,但它已经困扰了我好几个小时了您的意思是:
two_element.mousedown(function(){
this.attr({stroke:"#000000"});
el2.attr({stroke:'#000000'});
el3.attr({stroke:'#000000'});
});
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'});
}
}
假设您的另一个元素称为two_元素
编辑 您可以将此代码放入函数中,并根据选择的元素将其打开/关闭。您的主要功能如下所示:
two_element.mousedown(function(){
this.attr({stroke:"#000000"});
el2.attr({stroke:'#000000'});
el3.attr({stroke:'#000000'});
});
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'});
}
}
Element one可通过以下方式启用此功能:
one_element.mousedown(myFunction(true));
元素2通过以下方式关闭此功能:
two_element.mousedown(myFunction(false));
这看起来像JavaScript,而不是Java。在mousedown上,有十个元素会导致至少四个其他元素的更改。我想知道,一旦单击另一个元素,是否可以用一行代码“撤消”更改。我可以这样做,但我认为有一个更好的方法,把它放在一个单独的函数中,然后根据当前状态切换开/关,怎么样?您可能想在上面的问题中添加更多信息,以获得更符合您需要的答案。是的!这就是我想要的。非常感谢。你能告诉我怎么做吗?我更新了答案。请注意,这是未经测试的,但应该让您朝着正确的方向前进。