把hellip(...)放到d3.js中栏内的文本中

时间:2016-05-13 18:33:23

标签: javascript css d3.js

我有一个图表,其中有条形图,如果文字不适合条形图,那么我现在正在这样做,然后就在条形图之外。

d3.selectAll('.c3-text')
      .each(function(d){
      var self = d3.select(this),
      width = +d3.select('.c3-zoom-rect').attr('width');
      if (+self.attr('x') + self.node().getComputedTextLength() > width){
      self.attr('x', '5');
      }
});

现在我想要文本如果不适合栏,则添加省略号(...)并将文本剪切到栏的宽度。

当条形图非常小时,我需要省略文本,并且还需要屏幕的省略号。 enter image description here

非常感谢。

https://jsfiddle.net/e00vfofo/

1 个答案:

答案 0 :(得分:0)

对于较长的栏使用样式或css'溢出:隐藏;空白:NOWRAP;文本溢出:省略号;” - 这会自动截断并向溢出的文本添加省略号。

对于短栏,请将文本取出,并将…添加到字符串的末尾。