Chiqui Esteban
Chiqui Esteban

Reputation: 421

Detecting classname of SVGAnimatedString

I had a problem with a SVG map I was building, the functions triggered by onmouseover on g were not working. I used then

window.onmouseover=function(e) {
            console.log(e.target.className);
        };

to see if there was any problem with the classname, and then discovered than instead of the classname I was using, the system was detecting

SVGAnimatedString {animVal: "", baseVal: ""}

Something that never happened to me before the hundreds of times I've used similar code. Any idea how can I get the actual classname of the g elements on mouseover? Thanks

Upvotes: 25

Views: 11194

Answers (2)

Jos Prins
Jos Prins

Reputation: 11

Make sure you also set the class name inside the svg path tags and then try e.target.getAttribute("class")

That worked for me.

Upvotes: 0

radiaph
radiaph

Reputation: 4081

Simplest way:

e.target.className.baseVal

Another way:

e.target.getAttribute("class")

Upvotes: 32

Related Questions