• js实现H5页面手指滑动刻度尺


        写了一个在移动端使用的可滑动刻度尺,曾经在原生App中看到过,做得很精细,现在用web页面实现的;

      实现效果如下:(源码见文章的最后)

      

        封装成直接可用的MeasureRuler.js

        调用方法:

    //初始化尺子
        var measureRuler =new MeasureRuler({
            wrapperId:"rulerWrapper",     //容器ID,页面中写一个DIV就行 (必须)
            max:2000,                     //刻度尺最大的刻度    (非必须,默认为2000)
            minUnit:1,                    //刻度尺最小刻度    (非必须,默认为1)
            unitSet:10,                   //刻度尺单元长度    (非必须,默认是10)
          value:5,                      //初始化数值       (非必须,默认为1)
            mult:1,     //刻度值倍数,默认是最小刻度值为10px,如果定mult为3则最小刻度为30px (非必须,默认为1)
            callback:rulerSetValue        //滑动尺子过程中的回调函数     (非必须)
            })  

               

       给刻度尺赋值

          //给刻度值赋值为3
        measureRuler.setValue(3)

       

      

        切换刻度尺状态,满足不同量程,重绘刻度尺

                  //重新设定新的参数
               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

                  注:存在问题

                   组件使用touch事件,捕捉滑动范围,但是当最小刻度为1时即每一刻度为10px,小范围滑动得不精准,需要反复前后小心滑动才能滑到像滑到的刻度点;

                  

         

                

      

    作者:龙骑士baby
             
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    uva 1511 最小生成树
    百度之星2017初赛A-1006-度度熊的01世界
    工作5年总结-总结这两年在阳光的日子
    在visual studio中查看源代码
    根据C#编程经验思考编程核心
    项目的可维护可持续性思考
    java学习
    What is ASP.NET SignalR
    WCF 和 ASP.NET Web API
    wcf服务
  • 原文地址:https://www.cnblogs.com/xingxiangyi/p/6885209.html
Copyright © 2020-2023  润新知