【问题标题】:Text not rendered in d3 visualization未在 d3 可视化中呈现的文本
【发布时间】:2014-01-31 14:54:33
【问题描述】:

我在这里查看可视化代码http://bl.ocks.org/mbostock/4062045,我很想知道为什么 json 文件中的 name 没有与节点一起呈现,即使代码包括:

node.append("title").text(function(d) { return d.name; });

【问题讨论】:

    标签: javascript html json svg d3.js


    【解决方案1】:

    SVG <title> 元素未显示在屏幕上。它被浏览器用作工具提示文本(也被屏幕阅读器使用),其方式与 HTML 中的标题属性相同。

    即 SVG 代码

    <svg>
       <image xlink:href="image.png">
          <title>My PNG</title>
       </image>
    </svg>
    

    相当于HTML代码

    <div>
       <img src="image.png" title="My PNG" />
    </div>
    

    【讨论】:

    • 谢谢。显示持久文本而不是工具提示文本的语法是什么。
    • 您需要添加一个实际的&lt;text&gt; 元素。这是节点旁边带有文本标签的示例:bl.ocks.org/mbostock/1153292
    【解决方案2】:

    属性title 应该显示为工具提示(如果您将鼠标悬停在节点上),并且确实显示正确,请检查一下。 (我知道……这不合逻辑,但这是标准)

    【讨论】:

    • 这很奇怪......因为即使我在鼠标悬停时也看不到标题。我尝试了 Safari 和 Firefox。
    • 一个节点上的 1 秒足以让我的 Firefox 和 Chrome 弹出工具提示。
    • 在大多数浏览器中,您必须将鼠标始终悬停在元素上,以防止工具提示在这里和任何地方弹出——对于这些小节点,它必须相当精确。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-18
    • 1970-01-01
    • 2021-11-17
    相关资源
    最近更新 更多