原生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 相关文章推荐
IE 缓存策略的BUG的解决方法
Jul 21 Javascript
统计出现最多的字符次数的js代码
Dec 03 Javascript
JavaScript EasyPager 分页函数
May 25 Javascript
关于jQuery中的end()使用方法
Jul 10 Javascript
用jquery统计子菜单的条数示例代码
Oct 18 Javascript
JS常用正则表达式总结
Nov 12 Javascript
基于jquery异步传输json数据格式实例代码
Nov 23 Javascript
jquery实现鼠标滑过小图时显示大图的方法
Jan 14 Javascript
jQuery学习笔记之2个小技巧
Jan 19 Javascript
基于 Vue.js 之 iView UI 框架非工程化实践记录(推荐)
Nov 21 Javascript
Webstorm2016使用技巧(SVN插件使用)
Oct 29 Javascript
JS变量提升及函数提升实例解析
Sep 03 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网站在线人数统计
2008/04/09 PHP
PHP缩略图生成和图片水印制作
2017/01/07 PHP
PHP抽象类与接口的区别详解
2019/03/21 PHP
浅谈JavaScript超时调用和间歇调用
2015/08/30 Javascript
JavaScript ES6中CLASS的使用详解
2016/11/22 Javascript
JS双击变input框批量修改内容
2016/12/12 Javascript
vue使用Axios做ajax请求详解
2017/06/07 Javascript
easyui简介_动力节点Java学院整理
2017/07/14 Javascript
vue实现动态列表点击各行换色的方法
2018/09/13 Javascript
iView-admin 动态路由问题的解决方法
2018/10/03 Javascript
vue路由中前进后退的一些事儿
2019/05/18 Javascript
JS快速实现简单计算器
2020/04/08 Javascript
jQuery实现的移动端图片缩放功能组件示例
2020/05/01 jQuery
vue在图片上传的时候压缩图片
2020/11/18 Vue.js
Python pass 语句使用示例
2014/03/11 Python
Python中正则表达式详解
2017/05/17 Python
python制作小说爬虫实录
2017/08/14 Python
Python实现pdf文档转txt的方法示例
2018/01/19 Python
pip install urllib2不能安装的解决方法
2018/06/12 Python
python实现linux下抓包并存库功能
2018/07/18 Python
Django框架实现的普通登录案例【使用POST方法】
2019/05/15 Python
Python FTP文件定时自动下载实现过程解析
2019/11/12 Python
Python基于Dlib的人脸识别系统的实现
2020/02/26 Python
基于HTML5 的人脸识别活体认证的实现方法
2016/06/22 HTML / CSS
美国派对用品及装饰品网上商店:Shindigz
2016/07/30 全球购物
英国经典球衣网站:Classic Football Shirts
2017/05/20 全球购物
德国baby-markt婴儿用品瑞士网站:baby-markt.ch
2017/06/09 全球购物
英国网上购买门:Direct Doors
2018/06/07 全球购物
Senreve官网:美国旧金山的奢侈手袋品牌
2019/03/21 全球购物
经典广告词大全
2014/03/14 职场文书
承诺书怎么写
2014/03/26 职场文书
新学期教师寄语
2014/04/02 职场文书
责任书范本
2014/08/25 职场文书
竞聘演讲稿怎么写
2014/08/28 职场文书
行政文员实习自我鉴定范文
2014/09/14 职场文书
财务科长个人对照检查材料
2014/09/18 职场文书