不确定为什么Javascript eventListener未链接到SVG元素?

不确定为什么Javascript eventListener未链接到SVG元素?,javascript,html,svg,event-listener,Javascript,Html,Svg,Event Listener,大家好,我正在解决一个问题,我已经整理了一个简单的SVG循环,我希望将一些JS代码连接到它,以便在第一次单击时将颜色从蓝色更改为红色,然后在第二次单击时返回蓝色 代码发布在下面,我已经通过语法检查器检查过了,显然一切正常 所以,也许我使用的逻辑太离谱了,或者是一些次要的东西。希望有人能给我指出正确的方向,谢谢 ` var shapeClick=document.getElementById(“形状”).addEventListener(“单击”,更改颜色); var=0; 函数changeCo

大家好,我正在解决一个问题,我已经整理了一个简单的SVG循环,我希望将一些JS代码连接到它,以便在第一次单击时将颜色从蓝色更改为红色,然后在第二次单击时返回蓝色

代码发布在下面,我已经通过语法检查器检查过了,显然一切正常

所以,也许我使用的逻辑太离谱了,或者是一些次要的东西。希望有人能给我指出正确的方向,谢谢

`
var shapeClick=document.getElementById(“形状”).addEventListener(“单击”,更改颜色);
var=0;
函数changeColor(){
如果(shape.fill==“rgb(29172249)”)
{
shape.fill==“rgb(255,0,0)”;
}
否则{
shape.fill==“rgb(29172249)”;
}
}
`
试试这个:

var shapeClick=document.getElementById(“形状”).addEventListener(“单击”,更改颜色);
var=0;
函数changeColor(){
如果(shape.style.fill==“rgb(29172249)”)
{
shape.style.fill=“rgb(255,0,0)”;
}
否则{
shape.style.fill=“rgb(29172249)”;
}
}


什么是
seat0
?刚刚更正,已经看了太久了!eventListener很好,但是shape.fill是“未定义的”。您可以通过像这里这样的“shape.setAttribute()”访问它-感谢您的回答,它似乎可以在您的JSFIDLE上工作,但是当我将它放在.js文件中时,它甚至不会变为红色。你认为如果我把rgb号码换成#1dacf9会有什么不同吗?