原生JS实现圆环拖拽效果


Posted in Javascript onApril 07, 2017

最近用原生JS写一个环形的鼠标滑动效果,代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
  <style>
    *{margin:0;padding:0;}
    div{width:50px;height:50px;border-radius:50%;position: absolute;
      border-width:10px;border-style: solid;}
  </style>
</head>
<body>
</body>
<script>
  var divList=[];//创建一个空的集合,用来存储创建的div
  for(i=0;i<50;i++){//循环次数50,创造50个div(环形)
    var div=document.createElement("div");
    var red=Math.round(Math.random()*255);
    var green=Math.round(Math.random()*255);
    var yellow=Math.round(Math.random()*255);//(产生随机数作为环形的颜色)
    div.style.borderColor="rgb("+red+","+green+","+yellow+")";
    document.body.appendChild(div);//在文档中产生环形
    divList[divList.length]=div;//将产生的每一个环形放入空集合
  }
  document.onmousemove=function(e){//先鼠标按下获取相对位置
    var evt=window.event || e;//IE兼容
    var x=evt.clientX+(document.documentElement.scrollLeft||document.body.scrollLeft);//鼠标当前x位置
    var y=evt.clientY+(document.documentElement.scrollTop||document.body.scrollTop);//鼠标当前y位置

    divList[0].style.left=x+"px";//第一个环形的x位置
    divList[0].style.top=y+"px";//第一个环形的Y位置

      for(i=divList.length-1;i>0;i--){//循环让每一个环形都在它上一个的位置
        divList[i].style.left=divList[i-1].offsetLeft+"px";
        divList[i].style.top=divList[i-1].offsetTop+"px";
      }
    }
</script>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js操作ajax返回的json的注意问题!
Feb 23 Javascript
可兼容IE的获取及设置cookie的jquery.cookie函数方法
Sep 02 Javascript
ExtJS[Desktop]实现图标换行示例代码
Nov 17 Javascript
jQuery mobile 移动web(4)
Dec 20 Javascript
JavaScript学习笔记之数组随机排序
Mar 23 Javascript
原生JavaScript制作计算器
Oct 16 Javascript
canvas 弹幕效果(实例分享)
Jan 11 Javascript
iOS + node.js使用Socket.IO框架进行实时通信示例
Apr 14 Javascript
Angular.JS中的this指向详解
May 17 Javascript
vue数据双向绑定的注意点
Jun 23 Javascript
SpringBoot+Vue前后端分离,使用SpringSecurity完美处理权限问题的解决方法
Jan 09 Javascript
vue-cli和v-charts实现可视化图表过程解析
Oct 08 Javascript
Zepto实现密码的隐藏/显示
Apr 07 #Javascript
js按条件生成随机json:randomjson实现方法
Apr 07 #Javascript
详解JS中遍历语法的比较
Apr 07 #Javascript
JavaScript原生数组Array常用方法
Apr 06 #Javascript
微信小程序 图片宽度自适应的实现
Apr 06 #Javascript
微信小程序 下拉菜单的实现
Apr 06 #Javascript
微信小程序五星评分效果实现代码
Apr 06 #Javascript
You might like
PHP rawurlencode与urlencode函数的深入分析
2013/06/08 PHP
php多用户读写文件冲突的解决办法
2013/11/06 PHP
ThinkPHP自定义函数解决模板标签加减运算的方法
2015/07/03 PHP
php去除二维数组的重复项方法
2015/11/03 PHP
PHP动态生成指定大小随机图片的方法
2016/03/25 PHP
PHP入门教程之PHP操作MySQL的方法分析
2016/09/11 PHP
php静态成员方法和静态的成员属性的使用方法
2017/10/26 PHP
详解PHP序列化和反序列化原理
2018/01/15 PHP
PHP中$GLOBALS与global的区别详解
2019/03/21 PHP
Javascript 构造函数,公有,私有特权和静态成员定义方法
2009/11/30 Javascript
JavaScript Distilled 基础知识与函数
2010/04/07 Javascript
用innerhtml提高页面打开速度的方法
2013/08/02 Javascript
详解BootStrap中Affix控件的使用及保持布局的美观的方法
2016/07/08 Javascript
AngularJS ng-bind-html 指令详解及实例代码
2016/07/30 Javascript
D3.js实现直方图的方法详解
2016/09/25 Javascript
使用react-router4.0实现重定向和404功能的方法
2017/08/28 Javascript
js中this对象用法分析
2018/01/05 Javascript
深入浅出 Vue 系列 -- 数据劫持实现原理
2019/04/23 Javascript
JS前端知识点总结之内置对象,日期对象和定时器相关操作
2019/07/05 Javascript
基于js实现复制内容到操作系统粘贴板过程解析
2019/10/11 Javascript
原生javascript制作的拼图游戏实现方法详解
2020/02/23 Javascript
使用 Jest 和 Supertest 进行接口端点测试实例详解
2020/04/25 Javascript
JavaScript实现猜数字游戏
2020/05/20 Javascript
vue 如何使用递归组件
2020/10/23 Javascript
Python的Tornado框架的异步任务与AsyncHTTPClient
2016/06/27 Python
python 消除 futureWarning问题的解决
2019/12/25 Python
如何使用python实现模拟鼠标点击
2020/01/06 Python
keras训练浅层卷积网络并保存和加载模型实例
2020/07/02 Python
Python  word实现读取及导出代码解析
2020/07/09 Python
eDreams澳大利亚:预订机票、酒店和度假产品
2017/04/19 全球购物
安全环保标语
2014/06/09 职场文书
村支部书记群众路线对照检查材料思想汇报
2014/10/08 职场文书
岳麓书院导游词
2015/02/03 职场文书
放假通知格式
2015/04/14 职场文书
远程教育学习心得体会
2016/01/23 职场文书
js实现模拟购物商城案例
2021/05/18 Javascript