初识DevExtreme,动态的生成多个Tooltip

遇到的问题:

    1、用一个模板生成多个Tooltip时,发现只有最后一个生成了

        解决方法:使用多个模板,静态的写在页面上,或者动态的为页面追加模板

      静态的: <template id="tooltipcardRateRevenue">
                    </template>
                        <template id="tooltipcardRateSoftMargin">
                        </template>
                        <template id="tooltipcardRateWarranty">
                        </template>
                          <template id="tooltipcardRateService"

                        </template>

  动态的: if ($('#tooltip' + field).length==0)
        $("body").append('<template id="tooltip' + field + '"></template>');

 2、修改颜色,原生参数没有,只有通过修改原生样式

              *.dx-popup-wrapper > .dx-overlay-content {
                    background-color: lightgray;
                    color: black;
                    font-weight: 700 !important;
                }
                .dx-tooltip-wrapper.dx-popover-wrapper .dx-popover-arrow::after {
                    background-color: lightgray;
                  }

3、原生参数没有没有透明度设置参数,只有在动画里面修改

最后js代码如下:

                     createToolTip: function (field) {
        if ($('#tooltip' + field).length==0)
        $("body").append('<template id="tooltip' + field + '"></template>');
        $("#tooltip" + field).dxTooltip({
            target:'#'+field,
            showEvent: 'mouseenter',
            hideEvent: 'mouseleave',
            hideOnOutsideClick: false,
            position: 'top',
            animation: {
                show: {
                    type: 'pop',
                    from: {
                        scale: 0.1,
                        opacity: 0,
                    },
                    to: {
                        opacity: 0.9,
                        scale: 1,
                    },
                },
                hide: {
                    type: 'pop',
                    from: {
                        scale: 1,
                        opacity: 0.9,
                    },
                    to: {
                        opacity: 0,
                        scale: 0.1,
                    },
                },
            },
            contentTemplate(data) {
                data.html('<div style="font-weight:bolder;font-size:16px"> % change of <br/>' + storeDash.lastParam.crtName + ' vs ' + storeDash.lastParam.lspName+'</div>');
            },
        });

       /* $("#" + $('#' + field).attr("aria-describedby")).css("background-color", "lightgray");*/
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要在 ECharts 中同时展示多个 tooltip 提示框,您可以使用 tooltip 的 axisPointer 配置项,并设置为多个轴指示器类型。每个轴指示器类型对应一个 tooltip 提示框。 下面是一个示例,展示了同时展示多个 tooltip 提示框的配置: ```javascript option = { // 其他配置项... tooltip: { trigger: 'axis', axisPointer: { type: ['line', 'cross'], // 设置多个轴指示器类型 lineStyle: { color: '#999999', width: 1 } }, formatter: function(params) { var tooltips = ''; for (var i = 0; i < params.length; i++) { var seriesName = params[i].seriesName; var value = params[i].value; tooltips += seriesName + ': ' + value + '<br/>'; } return tooltips; } }, series: [ { name: 'Series 1', type: 'line', data: [10, 20, 30, 40, 50], // 其他配置项... }, { name: 'Series 2', type: 'line', data: [100, 200, 300, 400, 500], // 其他配置项... } ] }; ``` 在上述代码中,我们通过 axisPointer 的 type 属性设置了两个轴指示器类型:'line' 和 'cross'。这样,当鼠标移动到图表上时,会同时展示两个 tooltip 提示框,分别对应这两个轴指示器类型。 在 tooltip 的 formatter 函数中,我们遍历 params 参数,获取每个系列的名称和对应的数值,并将它们拼接到一个字符串中。最后,返回这个字符串作为 tooltip 的内容。 这样,当鼠标悬停在图表上时,会同时显示多个 tooltip 提示框,展示各个系列的名称和数值。 您可以根据实际需求和图表配置进行适当的调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

葩熊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值