echarts 滚动组件dataZoom解析之h5自定义dataZoom组件样式

因h5页面需求:需要用柱状图展示一个季度内的数据统计情况,而在手机端,只能采用滚动条进行实现,但是echarts自带的滚动组件在手机端不是特别美观,故对其属性进行修改:

dataZoom: [//给x轴设置滚动条
        {


            type: 'slider',//slider表示有滑动块的,inside表示内置的
            // startValue: 8,//可用于设置开始显示的柱子的长度
            // endValue: 1,//可用于设置结束显示的柱子的长度
            start: 80,//默认为0  可设置滚动条从在后进行展示
            end: 100,//默认为100
            show: true,
            xAxisIndex: [0],
            handleSize: 0,//滑动条的 左右2个滑动条的大小
            height: 12,//组件高度
            left: '10%', //左边的距离
            right: '10%',//右边的距离
            bottom: -2,//右边的距离
            borderColor: "#F4F4F4",
            fillerColor: '#E7E7E7',
            backgroundColor: '#F4F4F4',//两边未选中的滑动条区域的颜色
            showDataShadow: false,//是否显示数据阴影 默认auto
            showDetail: false,//即拖拽时候是否显示详细数值信息 默认true
            realtime: true, //是否实时更新
            filterMode: 'filter',
            handleStyle: {
                borderRadius: '20',
            },
        },
        //下面这个属性是里面拖到
        {
            type: 'inside',
            show: true,
            xAxisIndex: [0],
            start: 0,//默认为1
            end: 100,//默认为100
            moveOnMouseWheel: false,
            preventDefaultMouseMove: false,
        },
    ],

通过上述属性修改即可实现h5页面echarts 滚动条的样式自定义,效果如下:

 

H5 中,echarts 设置 dataZoom 后无法左右滑动的原因可能有以下几种: 1. dataZoom 的 `throttle` 参数设置过大,导致滑动事件响应不及时。可以尝试将 `throttle` 参数设置为较小的值,例如 50ms。 2. 页面中存在其他元素或脚本阻止了 dataZoom 的滑动事件。可以检查页面中是否有其他元素覆盖在 dataZoom 上,或者其他脚本修改了 dataZoom 的行为。 3. dataZoom 的 `orient` 参数设置不正确,导致无法滑动。可以尝试将 `orient` 参数设置为 'horizontal',确保 dataZoom 是水平方向的。 4. dataZoom 的 `start` 和 `end` 参数设置不正确,导致无法滑动。可以尝试将 `start` 和 `end` 参数设置为合适的值,确保 dataZoom 能够滑动到需要的位置。 以下是一个示例代码,展示了如何在 H5 中使用 echarts 设置 dataZoom,同时解决左右滑动无效的问题: ```javascript option = { xAxis: { type: 'category', data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日'] }, yAxis: { type: 'value' }, series: [{ type: 'bar', data: [120, 200, 150, 80, 70, 110, 130] }], dataZoom: [{ type: 'slider', start: 0, end: 50, throttle: 50, orient: 'horizontal' }] }; ``` 以上代码中,我们设置了 dataZoom 的 `throttle` 参数为 50ms,确保滑动事件响应及时;同时设置了 dataZoom 的 `orient` 参数为 'horizontal',确保 dataZoom 是水平方向的。如果以上方法仍然无法解决问题,可以尝试检查页面中是否存在其他影响 dataZoom 滑动的因素。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值