原生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代码
Jun 27 Javascript
js获取元素在浏览器中的绝对位置
Jul 24 Javascript
国外大牛IE版本检测!现在IE都到9了,IE检测代码
Jan 04 Javascript
jquerymobile checkbox及时刷新才能获取其准确值
Apr 14 Javascript
js改变img标签的src属性在IE下没反应的解决方法
Jul 23 Javascript
javascript计时器事件使用详解
Jan 07 Javascript
编写高效jQuery代码的4个原则和5个技巧
Apr 24 Javascript
基于JavaScript实现单选框下拉菜单添加文件效果
Jun 26 Javascript
详解angular2实现ng2-router 路由和嵌套路由
Mar 24 Javascript
vue watch自动检测数据变化实时渲染的方法
Jan 16 Javascript
使用异步组件优化Vue应用程序的性能
Apr 28 Javascript
微信小程序云开发之使用云数据库
May 17 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实现图象锐化代码
2007/06/14 PHP
php计算一个文件大小的方法
2015/03/30 PHP
PHP使用flock实现文件加锁的方法
2015/07/01 PHP
PHP+jQuery+Ajax实现分页效果 jPaginate插件的应用
2015/10/09 PHP
PHP getName()函数讲解
2019/02/03 PHP
YII2框架中日志的配置与使用方法实例分析
2020/03/18 PHP
关于Javascript与iframe的那些事儿
2013/07/04 Javascript
原生javascript实现获取指定元素下所有后代元素的方法
2014/10/28 Javascript
js实现不提交表单获取单选按钮值的方法
2015/08/21 Javascript
jQuery实现连续动画效果实例分析
2015/10/09 Javascript
vue组件实现可搜索下拉框扩展
2020/10/23 Javascript
js中apply()和call()的区别与用法实例分析
2018/08/14 Javascript
vue数据初始化initState的实例详解
2019/04/11 Javascript
jQuery实现移动端下拉展现新的内容回弹动画
2020/06/24 jQuery
vue实现页面切换滑动效果
2020/06/29 Javascript
[59:32]Liquid vs Fnatic 2019国际邀请赛淘汰赛败者组BO1 8.20.mp4
2020/07/19 DOTA
Python编程修改MP3文件名称的方法
2017/04/19 Python
高效测试用例组织算法pairwise之Python实现方法
2017/07/19 Python
Python解决抛小球问题 求小球下落经历的距离之和示例
2018/02/01 Python
使用python和pygame绘制繁花曲线的方法
2018/02/24 Python
Python批量合并有合并单元格的Excel文件详解
2018/04/05 Python
Python如何获得百度统计API的数据并发送邮件示例代码
2019/01/27 Python
python实现扫雷游戏
2020/03/03 Python
html5 利用重力感应实现摇一摇换颜色可用来做抽奖等等
2014/05/07 HTML / CSS
亚马逊西班牙购物网站:amazon西班牙
2017/03/06 全球购物
工作自我评价怎么写
2014/01/29 职场文书
美术教师自我鉴定
2014/02/12 职场文书
大型营销活动计划书
2014/04/28 职场文书
美德少年事迹材料500字
2014/08/19 职场文书
党员四风剖析材料
2014/08/27 职场文书
党委领导班子整改方案
2014/09/30 职场文书
2015员工年度考核评语
2015/03/25 职场文书
学前班教学反思
2016/02/24 职场文书
导游词之香港-太平山顶
2019/10/18 职场文书
Python 制作自动化翻译工具
2021/04/25 Python
浅谈如何提高PHP代码质量之单元测试
2021/05/28 PHP