原生JS实现滑动按钮效果

利用Js制作的滑动按钮的具体代码,供大家参考,具体内容如下

首先贴上效果图
原生JS实现滑动按钮效果
文章图片

再贴上源码

Document - 锐客网body{margin:0; background-color:azure; }#container{position:absolute; left: 50%; top: 50%; transform: translateX(-50%) translateY(-50%); width: 200px; height: 50px; background-color: black; border-radius: 50px; }

知识点和制作思路及步骤

1、基本布局(父相子绝,left: 50%; top: 50%; transform: translateX(-50%)
translateY(-50%); )
2、svg的circle( cx )控制移动, 对于circle的cx采用setAtrribute来进行控制。
3、**Promise.then()**用来保证结束后进行clearInterval
4、circle监听了mousemove,mouseup,mousedown事件。 当mousedown事件触发会将cliked置为true进而move事件会进行reset;
5、mouseup和mouseleave会将cliked置为false;进而无法触发move事件的reset(停止);
6、当停止状态下,判断原点在左侧还是右侧, 动画: 如果在左半部分则利用setInterval进行10ms一帧每次1.5px的移动,判断到达开始或者结束点则停止。
7、再进行样式切换。

代码本人全部原创,请尽情抄袭,代码写完没有经过整理,可能存在无效变量,仅仅代表我的思路。
【原生JS实现滑动按钮效果】以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

    推荐阅读