Jquery 使用CSS禁用SVG鼠标单击事件
我想禁用使用css单击SVG元素:Jquery 使用CSS禁用SVG鼠标单击事件,jquery,css,svg,Jquery,Css,Svg,我想禁用使用css单击SVG元素: .disabled{ pointer-events: none; } 当我使用$(“.dasvg”)获取SVG元素时,控制台显示我已选择该元素: [ <svg width="500" height="500" class="dasvg"> <defs>…</defs> <defs>…</defs> <path class="link dragline
.disabled{
pointer-events: none;
}
当我使用$(“.dasvg”)
获取SVG元素时,控制台显示我已选择该元素:
[
<svg width="500" height="500" class="dasvg">
<defs>…</defs>
<defs>…</defs>
<path class="link dragline hidden" d="M0,0L0,0"></path>
<g>…</g>
<g>…</g>
</svg>
]
[
…
…
…
…
]
但是,当我尝试执行类似于
$(“.dasvg”).addClass(“disabled”)
或$(“.dasvg”)[0].addClass(“disabled”)的操作时,
disabled`类不会附加到元素中。有没有使用CSS禁用SVG元素的方法?jquery的addClass不能与SVG类一起工作,因为jquery无法处理可设置动画的SVG类属性。只要使用$(“.dasvg”)[0].setAttribute(“class”,“disabled”)
就可以了,假设元素还没有任何类。您可以将css放在svg标记中:
<svg>
<!-- Insert here -->
<style>
.disabled {
pointer-events: none;
}
<style>
<!-- The rest of the code -->
</svg>
.残疾人{
指针事件:无;
}
$(“.dasvg”)[0]
是一个DOM元素,而不是一个jQuery对象--.addClass
对它不起作用。$(.dasvg”)[0]。setAttribute(“class”,$(.dasvg”)[0]。attr('class')+“disabled”)即使已经有类也可以工作