Javascript 如何制作rect';s使用onclick按钮消失并重新显示
我有一些矩形,我想用onclick按钮显示然后消失。然而,rect从未消失 我对它进行了编码,这样当按下某个按钮时,一些变量要么Javascript 如何制作rect';s使用onclick按钮消失并重新显示,javascript,html,raphael,Javascript,Html,Raphael,我有一些矩形,我想用onclick按钮显示然后消失。然而,rect从未消失 我对它进行了编码,这样当按下某个按钮时,一些变量要么.hide()要么.show() 我的逻辑是,在go1()中定义了所有变量,这样当go2()播放完毕时,计算机将已经知道r1.remove()所指的内容,因此将其隐藏,反之亦然,使用.show()。情况显然并非如此 点击我 点击我 单击me2 似乎您在go1中定义了r1、r2和r3,因此它们在go2和go3中未定义 一个解决办法是增加 让r1、r2、r3 首先是所有功
.hide()
要么.show()
我的逻辑是,在go1()
中定义了所有变量,这样当go2()
播放完毕时,计算机将已经知道r1.remove()
所指的内容,因此将其隐藏,反之亦然,使用.show()
。情况显然并非如此
点击我
点击我
单击me2
似乎您在
go1
中定义了r1
、r2
和r3
,因此它们在go2
和go3
中未定义
一个解决办法是增加
让r1、r2、r3代码>
首先是所有功能,然后在go1
中更改
让r1=
到r1=
并对其他两个r
变量执行相同的操作
另外,我认为您需要将onclick=“go1”
更改为onclick=“go1()”
,并对其他两个单击处理程序执行相同的操作
我强烈建议您修复压痕。好的缩进使这样的问题更容易被发现。如果您发现很难正确缩进代码,请尝试使用
var p = Raphael(0, 0, 800, 800);
function go1() {
let r1 = p.rect(300, 300, 50, 50)
.attr({
'fill': 'red',
'cursor': 'pointer',
'href': 'https://www.google.com/',
});
let r2 = p.rect(377, 300, 50, 50)
.attr({
'fill': 'blue',
'cursor': 'pointer',
'href': 'https://www.google.com/',
});
p.path("M362 162 L588 559");
//p.path("M10 30L60 30L10 80L60 80z");
let r3 = p.rect(477, 400, 50, 50)
.attr({
'fill': 'yellow',
'cursor': 'pointer',
'href': 'https://www.google.com/',
});
};
function go2() {
r1.show();
r2.hide();
r3.hide();
}
function go3() {
r1.hide();
r2.show();
r3.show();
}