原生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 相关文章推荐
checkbox全选/取消全选以及checkbox遍历jQuery实现代码
Dec 02 Javascript
js移除事件 js绑定事件实例应用
Nov 28 Javascript
JavaScript中几个重要的属性(this、constructor、prototype)介绍
May 19 Javascript
js动态添加删除,后台取数据(示例代码)
Nov 25 Javascript
jQuery循环滚动新闻列表示例代码
Jun 17 Javascript
一个JavaScript获取元素当前高度的实例
Oct 29 Javascript
jQuery中$this和$(this)的区别介绍(一看就懂)
Jul 06 Javascript
jQuery插件实现无缝滚动特效
Nov 24 Javascript
Router解决跨模块下的页面跳转示例
Jan 11 Javascript
JS实现的哈夫曼编码示例【原始版与修改版】
Apr 22 Javascript
解决使用layui的时候form表单中的select等不能渲染的问题
Sep 18 Javascript
layui 实现二级弹窗弹出之后 关闭一级弹窗的方法
Sep 18 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
dede3.1分页文字采集过滤规则详说(图文教程)续二
2007/04/03 PHP
从php核心代码分析require和include的区别
2011/01/02 PHP
php各种编码集详解和以及在什么情况下进行使用
2011/09/11 PHP
Symfony2联合查询实现方法
2016/03/18 PHP
Laravel框架实现的记录SQL日志功能示例
2018/06/19 PHP
在laravel5.2中实现点击用户头像更改头像的方法
2019/10/14 PHP
javascript的事件描述
2006/09/08 Javascript
关于jQuery参考实例2.0 用jQuery选择元素
2013/04/07 Javascript
左侧是表头的JS表格控件(自写,网上没有的)
2013/06/04 Javascript
使用jQuery异步加载 JavaScript脚本解决方案
2014/04/20 Javascript
js拼接html注意问题示例探讨
2014/07/14 Javascript
手机开发必备技巧:javascript及CSS功能代码分享
2015/05/25 Javascript
jQuery中extend函数详解
2015/07/13 Javascript
canvas绘制环形进度条
2017/02/23 Javascript
用js实现每隔一秒刷新时间的实例(含年月日时分秒)
2017/10/25 Javascript
利用canvas中toDataURL()将图片转为dataURL(base64)的方法详解
2017/11/20 Javascript
Vue 创建组件的两种方法小结(必看)
2018/02/23 Javascript
Javascript三种字符串连接方式及性能比较
2019/05/28 Javascript
python3使用urllib示例取googletranslate(谷歌翻译)
2014/01/23 Python
在Python中关于中文编码问题的处理建议
2015/04/08 Python
Python2.x版本中maketrans()方法的使用介绍
2015/05/19 Python
Python数据分析之双色球统计单个红和蓝球哪个比例高的方法
2018/02/03 Python
对Python 检查文件名是否规范的实例详解
2019/06/10 Python
python实现翻转棋游戏(othello)
2019/07/29 Python
python实现kNN算法识别手写体数字的示例代码
2019/08/16 Python
python下载卫星云图合成gif的方法示例
2020/02/18 Python
CSS3 圆角效果
2009/07/15 HTML / CSS
CSS3中利用animation属性创建雪花飘落特效
2014/05/14 HTML / CSS
小学教育毕业生自荐信
2013/11/18 职场文书
生产班组长岗位职责
2014/01/05 职场文书
优秀女职工事迹材料
2014/02/06 职场文书
大三学生做职业规划:给未来找个方向
2014/02/24 职场文书
元旦联欢会主持词
2014/03/26 职场文书
毕业生求职信范文
2014/06/29 职场文书
小公司融资,商业计划书的8切记
2019/07/15 职场文书
Nginx优化服务之网页压缩的实现方法
2021/03/31 Servers