JS实现碰撞检测效果


Posted in Javascript onMarch 12, 2020

本文实例为大家分享了JS实现碰撞检测效果的具体代码,供大家参考,具体内容如下

<head>
 <meta charset="UTF-8">
 <title></title>
 <style type="text/css">
 #all{
  width: 500px;
  height: 500px;
  border: 2px solid sandybrown;
  position: relative;
  margin: 0 auto;
 }
 #div1{
  width: 50px;
  height: 50px;
  background-color: red;
  position: absolute;
 }
 #center{
  width: 150px;
  height: 150px;
  background-color: black;
  position: absolute;
  margin: 175px;
 }
 </style>
</head>
<body>
 <div id="all">
 <div id="div1"></div>
 <div id="center"></div>
 </div>
 <script type="text/javascript">
 var oAll = document.getElementById("all");
 var oDiv1 = document.getElementById("div1");
 var oCenter = document.getElementById("center");
 
 var maxL = oAll.clientWidth - oDiv1.clientWidth;
 var maxT = oAll.clientHeight - oDiv1.clientHeight;
 
 oDiv1.onmousedown = function(){
  var ev = ev || window.event;
  var lessX = ev.clientX - oDiv1.offsetLeft;
  var lessY = ev.clientY - oDiv1.offsetTop;
  document.onmousemove = function(){
  var ev = ev || window.event;
  var posL = ev.clientX - lessX;
  var posT = ev.clientY - lessY;
  
  if(oCenter.offsetLeft-oDiv1.offsetWidth<posL && posL<325 && oCenter.offsetLeft-oDiv1.offsetWidth<posT && posT<325 ){
   oCenter.style.backgroundColor = "red"
  }else{
   oCenter.style.backgroundColor = "black"
  }
  if(posL<0){
   posL = 0;
  }
  if(posT<0){
   posT = 0;
  }
  if(posL>maxL){
   posL = maxL;
  }
  if(posT>maxT){
   posT = maxT;
  }
  oDiv1.style.left = posL + "px";
  oDiv1.style.top = posT + "px";
  }
 }
 document.onmouseup = function(){
  document.onmousemove = null;
  oDiv1.onmousemove = null;
 }
 </script>
</body>

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

Javascript 相关文章推荐
加载jQuery后$冲突的解决办法
Jul 09 Javascript
精心挑选的15个jQuery下拉菜单制作教程
Jun 15 Javascript
js跨浏览器实现将字符串转化为xml对象的方法
Sep 25 Javascript
如何获取select下拉框的值(option没有及有value属性)
Nov 08 Javascript
JavaScript html5 canvas画布中删除一个块区域的方法
Jan 26 Javascript
Angular限制input框输入金额(是小数的话只保留两位小数点)
Jul 13 Javascript
使用node.js对音视频文件加密的实例代码
Aug 30 Javascript
jQuery扩展方法实现Form表单与Json互相转换的实例代码
Sep 05 jQuery
jQuery-Citys省市区三级菜单联动插件使用详解
Jul 26 jQuery
javascript 构建模块化开发过程解析
Sep 11 Javascript
layer ui 导入文件之前传入数据的实例
Sep 23 Javascript
vue-cli基础配置及webpack配置修改的完整步骤
Oct 20 Javascript
使用JS实现动态时钟
Mar 12 #Javascript
Vue使用vue-draggable 插件在不同列表之间拖拽功能
Mar 12 #Javascript
js实现动态时钟
Mar 12 #Javascript
package.json各个属性说明详解
Mar 11 #Javascript
package.json中homepage属性的作用详解
Mar 11 #Javascript
vue项目中使用vue-layer弹框插件的方法
Mar 11 #Javascript
Vue组件模板及组件互相引用代码实例
Mar 11 #Javascript
You might like
php之字符串变相相减的代码
2007/03/19 PHP
修改PHP的memory_limit限制的方法分享
2012/02/21 PHP
如何使用“PHP” 彩蛋进行敏感信息获取
2013/08/07 PHP
使用PHP实现生成HTML静态页面
2015/11/18 PHP
浅谈PHP中try{}catch{}的使用方法
2016/12/09 PHP
thinkPHP3.2.2框架行为扩展及demo示例
2018/06/19 PHP
PHP使用mongoclient简单操作mongodb数据库示例
2019/02/08 PHP
用于自动添加Digg This!按钮的JavaScript
2006/12/23 Javascript
jquery 获取json数据实现代码
2009/04/27 Javascript
javascript 获取元素位置的快速方法 getBoundingClientRect()
2009/11/26 Javascript
javascript间隔定时器(延时定时器)学习 间隔调用和延时调用
2014/01/13 Javascript
利用JavaScript检测CPU使用率自己写的
2014/03/22 Javascript
实例分析js和C#中使用正则表达式匹配a标签
2014/11/26 Javascript
JavaScript中的变量定义与储存介绍
2014/12/31 Javascript
javascript+html5实现仿flash滚动播放图片的方法
2015/04/27 Javascript
JS+CSS实现的经典圆角下拉菜单效果代码
2015/10/21 Javascript
深入理解jQuery 事件处理
2016/06/14 Javascript
js实现彩色条纹滚动条效果
2017/03/15 Javascript
node 文件上传接口的转发的实现
2019/09/23 Javascript
解决layui下拉框监听问题(监听不到值的变化)
2019/09/28 Javascript
[48:48]2014 DOTA2国际邀请赛中国区预选赛 SPD-GAMING VS Dream TIME
2014/05/21 DOTA
[00:03]DOTA2新版本PA至宝展示
2014/11/19 DOTA
[02:52]2017DOTA2国际邀请赛中国区预选赛晋级之路
2017/07/03 DOTA
[49:21]完美世界DOTA2联赛循环赛 Ink Ice vs LBZS BO2第二场 11.05
2020/11/06 DOTA
Python模块学习 datetime介绍
2012/08/27 Python
python实现的简单文本类游戏实例
2015/04/28 Python
Python Request爬取seo.chinaz.com百度权重网站的查询结果过程解析
2019/08/13 Python
Python实现获取当前目录下文件名代码详解
2020/03/10 Python
Python之字典添加元素的几种方法
2020/09/30 Python
css3 盒模型以及box-sizing属性全面了解
2016/09/20 HTML / CSS
ziaja齐叶雅官方海外旗舰店:来自波兰的天然护肤品牌
2017/01/02 全球购物
留学生如何写好自荐信
2013/12/27 职场文书
公司口号大全
2014/06/11 职场文书
调研座谈会发言材料
2014/08/23 职场文书
小学生推普周国旗下讲话稿
2014/09/21 职场文书
2019朋友新婚祝福语精选
2019/10/10 职场文书