2

我的莫里斯甜甜圈图上有很长的标签。由于它们很长,因此很难阅读。

当我将鼠标悬停在该文本上时,我希望有某种带有标签的弹出窗口。但是没有 css 类来绑定处理程序。

js代码:

Morris.Donut({
  element: 'donut-example',
  data: [
    {label: "Download SalesD DDDDDDDDDDDDDDDDD", value: 12},
    {label: "In-Store Sales AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", value: 30},
    {label: "Mail-Order Sales VVVVVVVVVVVVVVV", value: 20}
  ]
});

我试过格式化程序,但这不是一个解决方案。

请给我一些帮助。

这是示例

4

1 回答 1

2

很长一段时间没有任何答案后,我决定发布我自己的解决方案。我没有完全按照我的要求做,但提供了可读的解决方案。

它是在甜甜圈下方的标签上完成的,而不是在甜甜圈圈内。

这是关于 JS Bin 的工作解决方案

下面您可以看到在应用程序中工作的屏幕截图:

在此处输入图像描述

这是代码:


JS:

Morris.Donut({
  element: 'morrisDonutChart',
  data: [
    {label: "Download SalesD DDDDDDDDDDDDDDDDD", value: 12},
    {label: "In-Store Sales AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", value: 30},
    {label: "Mail-Order Sales VVVVVVVVVVVVVVV", value: 20}
  ]
});


$( "#morrisDonutChart" ).mouseover(function() {
    prepareMorrisDonutChart();
});

$( document ).ready(function() {
    prepareMorrisDonutChart();
});

function prepareMorrisDonutChart() {
    $("#morrisDonutChart tspan:first").css("display","none");
    $("#morrisDonutChart tspan:nth-child(1)").css("font-size","40px");

    var isi = $("#morrisDonutChart tspan:first").html();
    $('#morrisDonutChartSpan').text(isi);
}

HTML头:

<script src="https://ajax.googleapis.com/ajax/libs/mootools/1.5.0/mootools-yui-compressed.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/raphael/2.1.0/raphael-min.js"></script>
<script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
  <script src="http://cdn.oesmith.co.uk/morris-0.4.1.min.js"></script>

HTML正文:

  <div id="morrisDonutChart"></div>
  <div class="alert alert-info" role="alert">
    <span id="morrisDonutChartSpan"></span>
  </div>

我希望这会对某人有所帮助。

于 2015-08-25T12:47:47.087 回答