jQuery SVG,为什么我不能添加类?
我正在使用jQuery SVG。我无法向对象添加或删除类。有人知道我的错误吗?
SVG:
<rect class="jimmy" id="p5" x="200" y="200" width="100" height="100" />
不会添加该类的jQuery:
$(".jimmy").click(function() { $(this).addClass("clicked");
});
我知道SVG和jQuery可以很好地协作,因为我 定位对象并在单击对象时发出警报:
$(".jimmy").click(function() { alert('Handler for .click() called.');
});
回答:
阅读以下两个答案。
- jQuery 3修复了潜在的问题
- Vanilla JS:
element.classList.add('newclass')
可在现代浏览器中使用
jQuery(小于3)无法将类添加到SVG。
.attr()
与SVG一起使用,因此,如果您想依赖jQuery:
// Instead of .addClass("newclass")$("#item").attr("class", "oldclass newclass");
// Instead of .removeClass("newclass")
$("#item").attr("class", "oldclass");
而且,如果您不想依赖jQuery:
var element = document.getElementById("item");// Instead of .addClass("newclass")
element.setAttribute("class", "oldclass newclass");
// Instead of .removeClass("newclass")
element.setAttribute("class", "oldclass");
以上是 jQuery SVG,为什么我不能添加类? 的全部内容, 来源链接: utcz.com/qa/403843.html