3

如何在 JavaScript 或 jQuery 中检查 svg 对象的类型?我想检查一个标签是否是 type SVGAnimatedString

当我将对象输出到控制台时,它输出以下内容:

console.log(this.href);
SVGAnimatedString // is an object and can be expanded

在我的代码中,我尝试检查它是否是 SVG 对象,但检查不起作用。

if (this.href == 'SVGAnimatedString'){ //this check does not work
     //it s an svg object
    var url = this.href.animVal
}
else{
    var url = this.href; //get the href from the <a> element
}

如何正确检查它是否是SVGAnimatedString对象?

4

1 回答 1

3

您不应该使用 比较类型==。你需要使用instanceof. 你可以这样做:

if (this.href instanceof SVGAnimatedString){ //this check works!!!
     //it s an svg object
    var url = this.href.animVal
}
else{
    var url = this.href; //get the href from the <a> element
}

浏览器SVGAnimatedString支持较少。记在脑子里。:)

于 2012-09-18T13:38:33.007 回答