寫了一個在移動端使用的可滑動刻度尺,曾經(jīng)在原生App中看到過,做得很精細(xì),現(xiàn)在用web頁面實現(xiàn)的;
實現(xiàn)效果如下:(源碼見文章的最后)
封裝成直接可用的MeasureRuler.js
調(diào)用方法:
//初始化尺子 var measureRuler =new MeasureRuler({ wrapperId:"rulerWrapper", //容器ID,頁面中寫一個DIV就行 (必須) max:2000, //刻度尺最大的刻度 (非必須,默認(rèn)為2000) minUnit:1, //刻度尺最小刻度 (非必須,默認(rèn)為1) unitSet:10, //刻度尺單元長度 (非必須,默認(rèn)是10) value:5, //初始化數(shù)值 (非必須,默認(rèn)為1) mult:1, //刻度值倍數(shù),默認(rèn)是最小刻度值為10px,如果定mult為3則最小刻度為30px (非必須,默認(rèn)為1) callback:rulerSetValue //滑動尺子過程中的回調(diào)函數(shù) (非必須) })
給刻度尺賦值
//給刻度值賦值為3 measureRuler.setValue(3)
切換刻度尺狀態(tài),滿足不同量程,重繪刻度尺
//重新設(shè)定新的參數(shù) var nParam={ max:5, minUnit:0.5, unitSet:2, mult:3, value:1.5 } //重新繪制圖 measureRuler.reDrawRuler(nParam);
GitHub源碼分享:(如果覺得有用記得給個Star哦)
https://github.com/xingxiaoyiyio/h5-ruler/tree/master
https://www.jb51.net/jiaoben/514412.html
注:存在問題
組件使用touch事件,捕捉滑動范圍,但是當(dāng)最小刻度為1時即每一刻度為10px,小范圍滑動得不精準(zhǔn),需要反復(fù)前后小心滑動才能滑到像滑到的刻度點;
總結(jié)
以上所述是小編給大家介紹的js實現(xiàn)移動端H5頁面手指滑動刻度尺功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
標(biāo)簽:甘南 紅河 咸陽 蘇州 文山 萍鄉(xiāng) 營口 惠州
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《js實現(xiàn)移動端H5頁面手指滑動刻度尺功能》,本文關(guān)鍵詞 實現(xiàn),移動,端,頁面,手指,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。