[英]Get element click on inside an SVG Element
I have two nested <svg>
elements as follows: 我有两个嵌套的
<svg>
元素,如下所示:
<svg id="main_svg">
<svg data="business" id="something">
<rect>
// Code for rectangle
</rect>
</svg>
</svg>
How can I get the id of the <svg>
tag inside main_svg
? 如何获取
main_svg
<svg>
标记的main_svg
?
I tried the contextmenu
event handler with this.id
but it always returns main_svg
: 我用
this.id
尝试了contextmenu
事件处理程序,但是它总是返回main_svg
:
$("svg").contextmenu(function(e) {
e.preventDefault();
console.log(this.id);
});
How can this be done? 如何才能做到这一点? Are there any better approaches?
有没有更好的方法? I am happy with either events:
onclick
or contextmenu
. 我对以下两个事件感到满意:
onclick
或contextmenu
。
You can use the jQuery function $('svg').find("> svg")
to find every direct child- <svg>
-element of an <svg>
element. 您可以使用jQuery函数
$('svg').find("> svg")
找到每一个直接的儿童为<svg>
的的-元素<svg>
元素。
$('svg').find("> svg").each(function() {
var id = $(this).attr("id");
console.log(id);
});
See the jsFiddle: https://jsfiddle.net/kyjn6z87/ 参见jsFiddle: https ://jsfiddle.net/kyjn6z87/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.