svg元素 标签增加、移除class名-CSDN博客

65 阅读1分钟

svg元素 标签不支持jquery中addClass()、removeClass()方法

解决方法
$.fn.addSvgClass = function(className) {
    return this.each(function() {
        var attr = $(this).attr('class') || "";
        if (!$(this).hasClass(className)) {
            $(this).attr('class', $.trim(attr + ' ' + className))
        }
    })
};
$.fn.removeSvgClass = function(className) {
    return this.each(function() {
       	var attr = $(this).attr('class') || "";
       	if ($(this).hasClass(className)) {
           	$(this).attr('class', attr.split(" ").filter(item => { return item != className; }).join(" "))
       	}
   	})
};
实例
$('polygon').addSvgClass("be-selected")