Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/474.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使svg元素位于顶部_Javascript_Jquery_Svg - Fatal编程技术网

Javascript 使svg元素位于顶部

Javascript 使svg元素位于顶部,javascript,jquery,svg,Javascript,Jquery,Svg,我想把一些svg元素放在上面。类似于Z指数。我知道svg z索引是由它们的绘制顺序设置的。我可以通过删除svg元素并重新绘制来更改它们的顺序。所以我用“艰难的方式”去做。使用vanilla JS/JQuery有更好的方法吗?您不需要删除元素并重新创建它。你可以移动它 首先,获取指向它及其父SVG的指针: var mysvg = document.getElementById("mysvg"); var myelement = document.getElementById("myelement"

我想把一些svg元素放在上面。类似于Z指数。我知道svg z索引是由它们的绘制顺序设置的。我可以通过删除svg元素并重新绘制来更改它们的顺序。所以我用“艰难的方式”去做。使用vanilla JS/JQuery有更好的方法吗?

您不需要删除元素并重新创建它。你可以移动它

首先,获取指向它及其父SVG的指针:

var mysvg = document.getElementById("mysvg");
var myelement = document.getElementById("myelement");
然后使用
insertBefore()
将其插入末尾。如果您“插入”一个已经是DOM一部分的节点,它将被移动

mysvg.insertBefore(myelement, null);
此处使用
null
意味着将其作为最后一个子项插入

演示

函数moveIt()
{
var mysvg=document.getElementById(“mysvg”);
var myelement=document.getElementById(“myelement”);
mysvg.insertBefore(myelement,null);
}


移动它
您不需要删除元素并重新创建它。你可以移动它

首先,获取指向它及其父SVG的指针:

var mysvg = document.getElementById("mysvg");
var myelement = document.getElementById("myelement");
然后使用
insertBefore()
将其插入末尾。如果您“插入”一个已经是DOM一部分的节点,它将被移动

mysvg.insertBefore(myelement, null);
此处使用
null
意味着将其作为最后一个子项插入

演示

函数moveIt()
{
var mysvg=document.getElementById(“mysvg”);
var myelement=document.getElementById(“myelement”);
mysvg.insertBefore(myelement,null);
}


移动它
可能与否重复我知道该解决方案。我只是想知道更有效的方法你现在在做什么?我写的。。。删除svg元素并将其再次附加到svg字段您是否检查了可能重复的“否”“我知道该解决方案”。我只是想知道更有效的方法你现在在做什么?我写的。。。删除svg元素并将其再次附加到svg字段中。是否检查JQ中是否有类似的内容?是的。我已经用jQuery版本的
moveIt()
函数更新了答案。但是请注意,一般来说,jQuery不适合操作SVG元素。许多jQuery函数不能与SVG一起使用。JQ中是否有类似的功能?是的。我已经用jQuery版本的
moveIt()
函数更新了答案。但是请注意,一般来说,jQuery不适合操作SVG元素。许多jQuery函数不适用于SVG。