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

专业做网站公司济南dw个人网页设计

专业做网站公司济南,dw个人网页设计,qq小程序开放平台,网络维护人员文章目录 前言效果代码后言 前言 hello world欢迎来到前端的新世界 😜当前文章系列专栏:前端系列文章 🐱‍👓博主在前端领域还有很多知识和技术需要掌握,正在不断努力填补技术短板。(如果出现错误,感谢大家…

文章目录

  • 前言
  • 效果
  • 代码
  • 后言

前言

hello world欢迎来到前端的新世界


😜当前文章系列专栏:前端系列文章
🐱‍👓博主在前端领域还有很多知识和技术需要掌握,正在不断努力填补技术短板。(如果出现错误,感谢大家指出)🌹
💖感谢大家支持!您的观看就是作者创作的动力

效果

小球连接效果

代码

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><link rel="stylesheet" href="./index.css">
</head><body><div id="alert1" style="white-space:pre-wrap;"></div><div id="alert2" style="white-space:pre-wrap;"></div><canvas id="canvas1" style="position:absolute;left:0;top:0;"></canvas><script src="./index.js"></script></body></html>
html{width: 100vw;height: 100vh;}
body{width: 100vw;height: 100vh;overflow: hidden;
}
const alert1 = document.getElementById('alert1');
const alert2 = document.getElementById('alert2');
const canvas1 = document.getElementById('canvas1');
const ctx = canvas1.getContext('2d');const keys = getOtherKeys(); // 获取其它窗口的keys
const key = keys.length == 0 ? 1 : keys.at(-1) + 1; // 自增最大的key序号,定义自己窗口storage key
const color = ['red', 'blue',"green"][key % 3]; // 获取圆颜色// 窗口关闭时删除自己窗口storage
window.onunload = function () {localStorage.removeItem(key);
}function getOtherKeys() {const keys = [];for (let i = 0; i < localStorage.length; i++) {const k = Number(localStorage.key(i));!isNaN(k) && keys.push(k);}return keys.sort((a, b) => a - b);
}function draw() {const { clientWidth, clientHeight } = document.body; // 获取body高宽const { screenX, screenY } = window; // 获取浏览器相对屏幕坐标const barHeight = window.outerHeight - window.innerHeight; // 获取浏览器body顶部地址栏高度// 设置canvas为整个body高宽,铺满bodycanvas1.width = clientWidth;canvas1.height = clientHeight;// 获取自己的圆心坐标,为body中心const x = clientWidth / 2;const y = clientHeight / 2;// 画自己的圆ctx.fillStyle = color;ctx.beginPath();ctx.arc(x, y, 15, 0, Math.PI * 2);ctx.fill();// 记录自己的positionconst position = {top: y + barHeight + screenY,left: x + screenX,color: color,};// 获取其它窗口position,并遍历getOtherKeys().forEach(k => {const position2 = JSON.parse(localStorage.getItem(k)); // 获取其中一个窗口的圆心positionconst w = position2.left - position.left; // 获取相对自己圆心的横向间距const h = position2.top - position.top; // 获取相对自己圆心的纵向间距// 在自己的canvas上画出该圆ctx.fillStyle = position2.color;ctx.beginPath();ctx.arc(x + w, y + h, 15, 0, Math.PI * 2);ctx.fill();// 画连接线ctx.strokeStyle = "black";ctx.beginPath();ctx.moveTo(x, y);ctx.lineTo(x + w, y + h);ctx.stroke();})// 更新自己窗口的positionlocalStorage.setItem(key, JSON.stringify(position));window.requestAnimationFrame(draw);
}
window.requestAnimationFrame(draw);

后言

创作不易,要是本文章对广大读者有那么一点点帮助 不妨三连支持一下,您的鼓励就是博主创作的动力

http://www.15wanjia.com/news/191442.html

相关文章:

  • 华贸中心网站谁做的公司网站优化
  • 网站建设需求分析网站seo查询工具
  • 诸暨有哪些好网站制作公司巴中 网站建设
  • 企业的网站特点2019网站怎么做
  • 医院网站建设报价表山东济宁
  • 网站建设方案企业网站等保建设
  • 广州天呈网站建设衡水网站制作公司
  • 深圳网站公司制作做app需要什么软件
  • 石家庄网站设计网站维护seo外贸网站建设
  • pc网站wordpress主题无法显示
  • 公司建的站加油违法吗佛山市顺德区建设局网站
  • 怎么加php网站登陆源码wordpress 密码明文
  • 单位网站备案网站建设论坛社区
  • 企业营销网站模板头像设计制作器
  • 上海网站高端定制规划和设计一个网站
  • 北海哪家做网站dedecms网站地图前台路径不修改
  • 网站建设 中企动力烟台网站建设价格对比单
  • 支持wap网站的系统网站改版总结
  • 网站建设项目开发食材网站模板大全
  • 重庆建站网站免费郑州高端网站建设多少钱
  • dedecms学校网站天猫折扣店网站建设
  • 企业建站为什么选择网站定制福州网站建设制作品牌企业
  • 上饶专业做网站建设装修设计效果图怎么收费
  • 用npp做网站怎样自学做网站
  • 福州营销网站建设老品牌杭州知名的企业网站建设策划
  • 网上商城网站建设方案书网站彩票投注员做啥的
  • 怀柔石家庄网站建设天水建设局网站渣土治理
  • 网站模板名称网站建设高端网站
  • 手机全部网站长春互联网公司哪里多
  • 北京网站排名优化网络seo关键词优化技巧