我在容器中有几个SVG元素。如果我将一个元素拖到另一个元素的顶部,我想将该元素移开。我理解使用SVG我需要重绘所有元素,但我需要知道我需要移动以重新定位它的元素的ID。 尝试识别元素,但我最终得到的元素是我拖动而不是下面的元素。有没有办法做到这一点??? 找到了大量的答案移动SVG元素,但没有一个拖动一个在另一个上直接影响。也许我在说错误的搜索问题。 感谢
答案 0 :(得分:0)
我没有完全理解这个问题,但你可以像这样命名任何svg元素:
<polygon id="somePolygonId"...></polygon>
更一般<svgelement id="yourId"...></svgelement>
。
我建议检查snapsvg.io(http://snapsvg.io/),他们有.drag()
方法可以提供帮助,以及.select("#id")
方法。
希望这有帮助!
答案 1 :(得分:0)
如果您只想移动大对象,而不是寻找像素准确性,则通过在每个元素上调用07-09 20:52:45.850 26369-26369/? D/dalvikvm﹕ Late-enabling CheckJNI
07-09 20:52:46.681 26369-26369/com.example.tony.acctest E/Trace﹕ error opening trace file: No such file or directory (2)
07-09 20:52:47.362 26369-26369/com.example.tony.acctest I/dalvikvm﹕ Could not find method android.view.ViewGroup.onRtlPropertiesChanged, referenced from method android.support.v7.widget.Toolbar.onRtlPropertiesChanged
07-09 20:52:47.362 26369-26369/com.example.tony.acctest W/dalvikvm﹕ VFY: unable to resolve virtual method 13334: Landroid/view/ViewGroup;.onRtlPropertiesChanged (I)V
07-09 20:52:47.362 26369-26369/com.example.tony.acctest D/dalvikvm﹕ VFY: replacing opcode 0x6f at 0x0007
07-09 20:52:47.372 26369-26369/com.example.tony.acctest I/dalvikvm﹕ Could not find method android.content.res.TypedArray.getChangingConfigurations, referenced from method android.support.v7.internal.widget.TintTypedArray.getChangingConfigurations
07-09 20:52:47.372 26369-26369/com.example.tony.acctest W/dalvikvm﹕ VFY: unable to resolve virtual method 412: Landroid/content/res/TypedArray;.getChangingConfigurations ()I
07-09 20:52:47.372 26369-26369/com.example.tony.acctest D/dalvikvm﹕ VFY: replacing opcode 0x6e at 0x0002
07-09 20:52:47.372 26369-26369/com.example.tony.acctest I/dalvikvm﹕ Could not find method android.content.res.TypedArray.getType, referenced from method android.support.v7.internal.widget.TintTypedArray.getType
07-09 20:52:47.372 26369-26369/com.example.tony.acctest W/dalvikvm﹕ VFY: unable to resolve virtual method 434: Landroid/content/res/TypedArray;.getType (I)I
07-09 20:52:47.372 26369-26369/com.example.tony.acctest D/dalvikvm﹕ VFY: replacing opcode 0x6e at 0x0002
并将其与getBoundingClientRect()
进行比较的文档进行递归,{ {1}}。
https://developer.mozilla.org/en-US/docs/Web/API/Element/getBoundingClientRect
最顶层的(至少在SVG中)将是最后一场比赛。
答案 2 :(得分:0)
通过找到放置坐标然后重新绘制容器内容的组合解决了该问题。 谢谢你指点我正确的方向