当前位置: 首页 > news >正文

自己做的网站只能打开一个链接开源项目管理系统

自己做的网站只能打开一个链接,开源项目管理系统,网页视频下载器app免费,新乡哪个公司做网站好demo效果: 鼠标移入盒子,按下鼠标,开启移动跟随移动模式,再次按下关闭移动模式 涉及主要属性 在元素上单击鼠标按钮时输出鼠标指针的坐标: var x event.pageX; // 获取水平坐标 var y event.pageY; // 获取垂直坐标元素offsetL…

demo效果:

鼠标移入盒子,按下鼠标,开启移动跟随移动模式,再次按下关闭移动模式

涉及主要属性

在元素上单击鼠标按钮时输出鼠标指针的坐标:

var x = event.pageX;     // 获取水平坐标
var y = event.pageY;     // 获取垂直坐标

元素offsetLeft和offsetTop属性:
相当于最近一个有定位的父元素而言的位置,如果父元素没有定位则相当于body的x,y位置。

还有元素的offsetXXX属性不能修改只能用来读取(比如不能写:元素.offsetLeft=200),所以如果要使用(元素.style.xxx)来修改对应的原始位置
元素的offsetXXX和元素的style属性的区别:
1、offsetXX属性只读,style属性可以修改(最主要的区别)
2、offsetXX可以获取任何样式表上的样式,style属性则只能获取style=‘xxx’(行内样式)
3、还有其他的区别可以自己去搜搜嘻嘻

思路:

1、鼠标移入盒子,按下鼠标:开始计算在盒子的相对位置relativeX,relativeY
在这里插入图片描述

2、监听鼠标在盒子里面的移动(盒子和鼠标的位置关系始终保持不变)
3、根据鼠标位置和鼠标相对于盒子的位置计算得出当前盒子位置
在这里插入图片描述
4、鼠标再次点击取消跟随移动

具体代码

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>/* 清楚浏览器样式 */*{margin: 0;border: 0;}.box{width: 300px;height: 300px;  background-color: brown;position: relative;left: 200px;top: 200px;}</style>
</head>
<body><div class="box" id="box"></div><script >let boxEl = document.getElementById('box')let relativeX =  0let relativeY = 0let needMoving = false// 盒子跟随鼠标移动boxEl.addEventListener('click',(event)=>{// 盒子内部点击 修改是否跟随鼠标移动needMoving = !needMoving//计算相对位置if(needMoving){boxEl.style.cursor = 'grab'boxMoveWithMouse(event,boxEl)document.addEventListener('mousemove', changeElXY)}else{relativeX =  0relativeY = 0boxEl.style.cursor = 'default'//  移除鼠标移动事件document.removeEventListener('mousemove', changeElXY);}})// 鼠标移入盒子 盒子跟随鼠标移动function boxMoveWithMouse(e,el){// 鼠标在文档位置let  pageX = e.pageXlet  pageY = e.pageY// 盒子在文档位置let boxOffX = el.offsetLeftlet boxOffY = el.offsetTop// console.log('boxOffX',boxOffX)// console.log('boxOffY',boxOffY)// 盒子在文档相对位置relativeX = pageX - boxOffXrelativeY = pageY - boxOffY// console.log('relativeX',relativeX)// console.log('relativeY',relativeY)}//修改元素位置function changeElXY(event){//  //鼠标不在盒子里面if(relativeX<0||relativeY<0){return}let pageX = event.pageXlet pageY = event.pageY//  console.log('pageX',pageX)//  console.log('pageY',pageY)// 盒子位置let boxX = pageX - relativeXlet boxY = pageY - relativeY// console.log('boxX',boxX)// console.log('boxY',boxY)//修改盒子位置boxEl.style.left = boxX+'px'boxEl.style.top = boxY + 'px'}</script>
</body>
</html>

效果演示

在这里插入图片描述

http://www.yayakq.cn/news/967024/

相关文章:

  • 站长平台怎么做网站丘北网站建设
  • 太原网站的公司百度代发排名
  • 企业网站制作教程视频河北衡水市网站制作的公司
  • 类似百度的网站济南做网站的中企
  • 外国网站备案网站建设开题报告中的问题
  • 有服务器有域名怎么做网站深圳市腾讯计算机系统有限公司
  • 珠海电商网站建设thinkphp5 网站开发
  • js网站模板下载长沙有啥好玩的地方
  • 扁平风格网站 模板购物网站开发中查看订单的实现逻辑
  • 买了域名之后怎么做网站做淘宝客网站需要多大空间
  • 户外媒体网站建设免费WordPress的MySQL宕
  • 公司做网站的原因用来做调查问卷的网站
  • 小米企业网站的优化建议许昌北京网站建设
  • 怎么用wordpress建电商网站吗怎么做网站访问被拒绝
  • 国办网站建设规范网站推广策划报告
  • 怎么通过局域网建设网站东莞松山湖华为小镇
  • 织梦建站系统教程北京网站建设公司大全
  • 怎么做网站文件验证创意设计文案
  • 苏州网站开发找薇wordpress id97
  • 网站的结构类型百度下载安装到桌面上
  • 网站建设 请示设计师网站
  • 精品网站建设比较好外贸公司属于什么企业
  • 外贸公司网站改版思路wordpress js被挂木马
  • 想开一家相亲网站 怎么做佛山知名营销网站开发
  • 网站每天做多少外链合适深圳网站开发平台
  • 黄岩区信誉好高端网站设计酒店如何做团购网站
  • 郑州网站创建做网站推广方法
  • 凡科建站代理登录打电话做网站的话术
  • 网站降权如何百度申诉vfp网站开发
  • 珠海做网站最好的公司重庆勘察设计网