原生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 相关文章推荐
用jquery实现学校的校历(asp.net+jquery ui 1.72)
Jan 01 Javascript
jQuery判断div随滚动条滚动到一定位置后停止
Apr 02 Javascript
windows8.1+iis8.5下安装node.js开发环境
Dec 12 Javascript
jQuery平滑旋转幻灯片特效代码分享
Sep 07 Javascript
js实现前端分页页码管理
Jan 06 Javascript
如何使用vuejs实现更好的Form validation?
Apr 07 Javascript
Vue原理剖析 实现双向绑定MVVM
May 03 Javascript
jquery中each循环的简单回滚操作
May 05 jQuery
p5.js入门教程之小球动画示例代码
Mar 15 Javascript
vue项目中添加单元测试的方法
Jul 21 Javascript
Vue用v-for给循环标签自身属性添加属性值的方法
Oct 18 Javascript
jquery的$().each和$.each的区别
Jan 18 jQuery
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
使用apache模块rewrite_module (转)
2007/02/14 PHP
php遍历目录viewDir函数
2009/12/15 PHP
php中将数组转成字符串并保存到数据库中的函数代码
2013/09/29 PHP
Ubuntu server 11.04安装memcache及php使用memcache来存储session的方法
2016/05/31 PHP
php版微信公众账号第三方管理工具开发简明教程
2016/09/23 PHP
如何打开php的gd2库
2017/02/09 PHP
phpstorm 正则匹配删除空行、注释行(替换注释行为空行)
2018/01/21 PHP
JS分页效果示例
2013/10/11 Javascript
jQuery中的jQuery()方法用法分析
2014/12/27 Javascript
Javascript核心读书有感之语言核心
2015/02/01 Javascript
纯js实现仿QQ邮箱弹出确认框
2015/04/29 Javascript
javascript中 try catch用法
2015/08/16 Javascript
jQuery ui实现动感的圆角渐变网站导航菜单效果代码
2015/08/26 Javascript
解决JS请求服务器gbk文件乱码的问题
2015/10/16 Javascript
BootStrapTable服务器分页实例解析
2016/12/20 Javascript
一个Js文件函数中调用另一个Js文件函数的方法演示
2017/08/14 Javascript
react脚手架如何配置less和ant按需加载的方法步骤
2018/11/28 Javascript
Vue实现滑动拼图验证码功能
2019/09/15 Javascript
vue父子组件的通信方法(实例详解)
2019/11/10 Javascript
python 定时修改数据库的示例代码
2018/04/08 Python
Python 中字符串拼接的多种方法
2018/07/30 Python
Python获取一个用户名的组ID过程解析
2019/09/03 Python
python 表格打印代码实例解析
2019/10/12 Python
python3反转字符串的3种方法(小结)
2019/11/07 Python
Python 实现将某一列设置为str类型
2020/07/14 Python
Python爬虫获取豆瓣电影并写入excel
2020/07/31 Python
一些关于python 装饰器的个人理解
2020/08/31 Python
CSS书写规范、顺序和命名规则
2014/03/06 HTML / CSS
行政总经理岗位职责
2013/12/05 职场文书
腾讯广告词
2014/03/19 职场文书
初中作文评语大全
2014/04/23 职场文书
本科应届生求职信
2014/08/05 职场文书
承诺书模板
2014/08/30 职场文书
群众路线党员个人整改措施
2014/10/27 职场文书
python读取pdf格式文档的实现代码
2021/04/01 Python
python实现对doc、txt、xls等文档的读写操作
2022/04/02 Python