echarts拖拽滑塊dataZoom-slider自定義樣式簡單適配移動端
電腦端
移動端
代碼片段
dataZoom: [ { type: 'inside', start: 0, end: 100 }, { type: 'slider', backgroundColor: '#F2F5F9', fillerColor: '#BFCCE3', height: 13, // 設(shè)置slider的高度為15 start: 0, end: 100, right: 60, left: 60, bottom: 15, handleIcon: 'path://M30.9,53.2C16.8,53.2,5.3,41.7,5.3,27.6S16.8,2,30.9,2C45,2,56.4,13.5,56.4,27.6S45,53.2,30.9,53.2z M30.9,3.5M36.9,35.8h-1.3z M27.8,35.8 h-1.3H27L27.8,35.8L27.8,35.8z', // 使用類似 axisPointer 的圖標(biāo) handleSize: '200%', // 放大按鈕 borderColor: 'none', handleStyle: { color: '#BFCCE3', shadowBlur: 6, shadowColor: 'rgba(123, 154, 204, 0.5)', shadowOffsetX: 0, // 陰影偏移x軸多少 shadowOffsetY: 0 // 陰影偏移y軸多少 }, // 顯示的label的格式化器 // 20050101 變?yōu)?2005\n0101 labelFormatter: function (index, value) { const year = value.slice(0, 4); const date = value.slice(4); return year + '\n' + date; }, textStyle: { fontStyle: 'italic' // 設(shè)置字體傾斜 }, showDataShadow: false // 隱藏數(shù)據(jù)陰影 } ]
思路:
- showDataShadow: false // 隱藏數(shù)據(jù)陰影
是把數(shù)據(jù)預(yù)覽去掉 - 移動端不太方便,所以把按鈕進行了修改方便用戶拖拽。
handleIcon: 'path://M30.9,53.2C16.8,53.2,5.3,41.7,5.3,27.6S16.8,2,30.9,2C45,2,56.4,13.5,56.4,27.6S45,53.2,30.9,53.2z M30.9,3.5M36.9,35.8h-1.3z M27.8,35.8 h-1.3H27L27.8,35.8L27.8,35.8z', // 使用類似 axisPointer 的圖標(biāo) handleSize: '200%', // 放大按鈕 borderColor: 'none', handleStyle: { color: '#BFCCE3', shadowBlur: 6, shadowColor: 'rgba(123, 154, 204, 0.5)', shadowOffsetX: 0, // 陰影偏移x軸多少 shadowOffsetY: 0 // 陰影偏移y軸多少 },
- 因為 日期格式是 YYYYMMDD, 手機上顯示太長了,這里做了換行處理。
// 顯示的label的格式化器 // 20050101 變?yōu)?2005\n0101 labelFormatter: function (index, value) { const year = value.slice(0, 4); const date = value.slice(4); return year + '\n' + date; },
這里有個坑:labelFormatter
labelFormatter官網(wǎng)說,value在type 為 'category’的時候,是索引值。
但我實際看到的效果不是。
比如我有7000個數(shù)據(jù)點,每次拖拽的時候,索引index只有200多個,導(dǎo)致我獲取不到數(shù)據(jù)。
因為只想拖拽的時候,格式化顯示的label,第二個參數(shù)就是當(dāng)時顯示的label,但是文檔里沒有標(biāo)出來。
https://echarts.apache.org/zh/option.html#dataZoom-slider.labelFormatter
總結(jié)
到此這篇關(guān)于echarts拖拽滑塊dataZoom-slider自定義樣式簡單適配移動端的文章就介紹到這了,更多相關(guān)echarts拖拽滑塊dataZoom-slider適配移動端內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JS 邏輯判斷不要只知道用 if-else 和 switch條件判斷(小技巧)
這篇文章主要介紹了JS 邏輯判斷不要只知道用 if-else 和 switch,在一些邏輯復(fù)雜度的增加,代碼中的 if/else 和 switch 會越來越臃腫。本文將帶你嘗試寫出更優(yōu)雅的判斷邏輯,需要的朋友可以參考下2020-05-05List the Codec Files on a Computer
List the Codec Files on a Computer...2007-06-06JS防抖節(jié)流函數(shù)的實現(xiàn)與使用場景
在行走江湖的過程中,會出現(xiàn)很多性能優(yōu)化的問題來讓你手足無措,那么這篇文章主要給大家介紹了關(guān)于JS防抖節(jié)流函數(shù)的實現(xiàn)與使用場景,針對這兩個問題來為你答疑解惑,需要的朋友可以參考下2021-07-07