node
및 link
클래스의 SVG 요소 집합이 있습니다. 내 프로그램은 요소가 node
클래스인지 또는 link
클래스인지를 SVG 요소 중 하나를 가리키면 감지해야합니다. 그러나 어떤 이유로 .hasClass()
는 작동하지 않습니다SVG 요소에 대해 jQuery .hasClass() 메서드가 실패합니다.
$(".node").hover(function(evt){
console.log($(this).attr("class")); //returns "node"
console.log($(this).hasClass('node')); //returns false
}, function(){console.log("Done");});
그래서 나는에 공중 선회 요소는 클래스 node
을 가지고 있으며, console.log($(this).attr("class"));
같이 jQuery를 너무 감지하지만, 어떤 이유로 실제에 대한 .hasClass()
이 실패합니다. 왜 이런거야? SVG 때문에 실패합니까?
단지 보조 노트, 개봉)'실종 (결국':)하고, [나를 위해 작동하는 것 같다] http://jsfiddle.net/hungerpain/V4BNT /) – krishgopinath
흥미 롭다 ... 변수를'$ (this) .attr ("class")'로 설정하고 그 var로'hasClass'를 사용하십시오. 아직도 거짓? – tymeJV
SVG 내부의 요소는 실제로 HTML이 아니기 때문에 이러한 요소에 속성이 없기 때문에 속성을 얻는 것이 좋습니다.하지만 className 속성을 검사하는 hasClass를 사용하면 작동하지 않습니다. – adeneo