【发布时间】:2021-02-05 03:59:27
【问题描述】:
我想在 svg 文本旁边添加 2 个图标(附加图像,节点文本/名称将具有差异长度),我知道我们可以使用 foreignObject 但是当使用 foreignObject 时我无法获取节点值
var addSvgCnt = nodeEnter.append("g")
.attr("class", "txt-swap-parent");
addSvgCnt.append("foreignObject")
.attr("width", 1)
.attr("height", 30)
.append("xhtml:div")
.attr("class", "svg-node")
.html("<img src='https://cdn.onlinewebfonts.com/svg/img_356964.png' height='10' width='10'/>
<span>BRANCH1.2</span>
<img src='https://cdn.onlinewebfonts.com/svg/img_356964.png' height='10' width='10'/>");
这里我需要节点文本而不是 BRANCH1.2,我尝试了伪元素,但它也不起作用。实现这一目标的最佳解决方案是什么
【问题讨论】:
-
但是当我添加 svg 文本和 svg 图像时,我如何定位这三个元素,如上图所示,节点文本的长度可能不同。 @JavaScript
-
使用
text.textLength。
标签: javascript svg d3.js charts