在Raphael JS

Nie*_*sma 5 javascript raphael

我需要做类似的事情:

paper.text(Left, Top, " " + this._p.Label + ":");
paper.text(Left, Top, " " + this._p.Label + ":");
Run Code Online (Sandbox Code Playgroud)

但是前置的空格不会 在文本中显示或显示.

我试过了:

label.attr({"xml:space": "preserve"});
Run Code Online (Sandbox Code Playgroud)

......没有效果.

无论如何都要访问Raphael JS中的SVG节点,所以我可以设置

setAttributeNS("http://www.w3.org/XML/1998/namespace","space","preserve");
Run Code Online (Sandbox Code Playgroud)

(还有其他方法可以解决这个问题吗?)

Kev*_*sen 3

是的,您绝对可以将该命名空间属性直接应用于 Raphael 管理的 SVG 元素。就这么简单:

paper.canvas.setAttributeNS("http://www.w3.org/XML/1998/namespace", "xml:space","preserve");
Run Code Online (Sandbox Code Playgroud)

在这里展示了其功能。

  • 我没那么棒——我通过在其他地方以不同的形式询问这个问题来了解这个问题的答案 =) 在任何情况下,您都可以通过引用“element.node”来访问与 Raphael 对象关联的 svg 元素。干杯! (2认同)