2015-04-05 19 views
5

Ich hatte ein Problem mit einer SVG-Map, die ich gerade erstellte, die Funktionen, die durch onmouseover auf g ausgelöst wurden, funktionierten nicht. Ich habe dann verwendetErmitteln des Klassennamens von SVGAnimatedString

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

zu sehen, ob es irgendein Problem mit dem Klassennamen war, und dann entdeckt, als statt des Klassennamen war ich mit, wurde das System Erfassungs

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

Etwas, das mir noch nie passiert vor hunderten von Malen habe ich ähnlichen Code benutzt. Irgendeine Idee, wie ich den tatsächlichen Klassennamen der g-Elemente bei mouseover bekommen kann? Dank

Antwort

5

einfachste Weg:

e.target.className.baseVal 

Ein anderer Weg:

e.target.getAttribute("class") 
+0

Das Ergebnis ist, dass ein leerer Raum –

+0

Das bedeutet, dass keine Klassennamen mit dem Element zugeordnet ist. – radiaph

+0

Die zweite Option gibt 'null' zurück. Es hat tatsächlich eine Klasse, das ist das Problem –

Verwandte Themen