jQuery SVG:添加和删除类
尽管使用 jQuery SVG 创建交互式元素,但用户在尝试操作类时有时会遇到困难。出现的一个问题是无法从 SVG 对象中添加或删除类。
问题:
jQuery 选择器和事件处理程序与 SVG 元素无缝运行,允许执行诸如如在点击时显示警报。然而,尝试利用 jQuery 的 addClass 方法向这些相同的元素添加类却是不成功的。
解决方案:
核心问题在于 jQuery 无法直接修改类版本 3 之前的 SVG 元素。此限制需要使用替代方法来添加和删除类:
依赖于 jQuery 的方法:
不要使用 addClass 和 removeClass,而是利用 jQuery 的 attr() 方法来操作类属性:
// Add a new class $("#item").attr("class", "oldclass newclass"); // Remove a class $("#item").attr("class", "oldclass");
纯 JavaScript方法:
如果您不想依赖 jQuery,可以使用 JavaScript 的 setAttribute 方法直接操作元素的类属性:
// Add a new class var element = document.getElementById("item"); element.setAttribute("class", "oldclass newclass"); // Remove a class element.setAttribute("class", "oldclass");
以上是如何使用 jQuery 在 SVG 元素中添加和删除类?的详细内容。更多信息请关注PHP中文网其他相关文章!