免费网站排名优化在线个人简历表格模板

web/2025/9/27 13:11:01/文章来源:
免费网站排名优化在线,个人简历表格模板,海报设计说明,国美网站建设的目的手撸源代码如下#xff1a;注释应该很详细了#xff0c;拿去直用 可以放到在线编辑器测试#xff0c;记得修改图片路径 菜鸟教程在线编辑器 html langenheadmeta charsetUTF-8meta nameviewport conten… 手撸源代码如下注释应该很详细了拿去直用 可以放到在线编辑器测试记得修改图片路径 菜鸟教程在线编辑器 html langenheadmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/titlestyle#img_box {position: relative;width: 800px;height: 800px;border: 1px solid #000000;overflow: hidden;cursor: grab;}#img_c {width: 100%;height: 100%;position: absolute;object-fit: contain;user-select: none;-webkit-user-drag: none;user-select: none;-moz-user-select: none;-webkit-user-select: none;-ms-user-select: none;/* transition: all 0.1s ease-in-out; */}/style /headbodydiv idimg_boximg idimg_c title没有 src./1719194464803.jpg/divscriptinitImageScaleElement();function initImageScaleElement() {//定义参数const max 20;//放缩原图倍数const scale 0.05;//滚轮一下缩放的变化比例 越大放缩越快//获取对象const box document.getElementById(img_box);const img document.getElementById(img_c);/*** 图片已加载完毕后,对图片居中* 图片一开始其实默认是居中的只不过是img的object-fit: contain属性进行了居中并且产生了一些边缘填充空白* 这些填充的空白会影响后续图片拖拽的计算因此需要将img修改成图片展示的真实大小但对用户视觉不发生改变。*/img.onload function () {const imgRatio img.naturalWidth / img.naturalHeight; //图片横纵比const boxRatio box.clientWidth / box.clientHeight; //容器横纵比/*** 因为拿到的图片真实大小不是显示大小需要手动放缩适配到容器中* 当图片横纵比大于容器横纵比图片保持比例的情况下填充容器此时只能对图片的横向放缩填充全部容器 * 当图片横纵比小于容器横纵比图片保持比例的情况下填充容器此时只能对图片的纵向放缩填充全部容器 * 这个规律可以自己画图试验一下*/if (imgRatio boxRatio) { const scale box.clientWidth / img.naturalWidth;img.style.width box.clientWidth; //长度填充img.style.height img.naturalHeight * scale; //高度自适应img.style.top Math.ceil((box.clientHeight - img.clientHeight) / 2) px ;//位置居中} else {const scale box.clientHeight / img.naturalHeight;img.style.height box.clientHeight;//高度填充img.style.width img.naturalWidth * scale;//长度自适应img.style.left Math.ceil((box.clientWidth - img.clientWidth) / 2) px;//位置居中}};//用于元素拖拽时边界的参数限制入参{ 实际值左区间右区间 }const getRange (actual, limita, limitb) {if (actual -limita) {return -limita;} else if (actual limitb) {return limitb;}return actual;}/*** 缩放操作* */box.onwheel (event) {event.preventDefault(); //关闭默认事件const center_x event.clientX;const center_y event.clientY;const wheelDelta event.deltaY;const top_d center_y - img.offsetTop;const left_d center_x - img.offsetLeft;if (wheelDelta 0) {//缩小 往后推滚轮 【滚轮值和缩放关系不是固定的你也可以反过来】let modifyHeight img.clientHeight * (1 - scale);let modifyWidth img.clientWidth * (1 - scale);if (modifyHeight * max img.naturalHeight) { //只在比例范围内放缩img.style.height modifyHeight;img.style.width modifyWidth;img.style.top center_y - top_d * (1 - scale);img.style.left center_x - left_d * (1 - scale);} else {console.log(缩小超出 max * 100 %比例无法缩小);}} else {//放大 往前推滚轮let modifyHeight img.clientHeight * (1 scale);let modifyWidth img.clientWidth * (1 scale);if (modifyHeight img.naturalHeight * max) { //只在比例范围内放缩img.style.height modifyHeight;img.style.width modifyWidth;img.style.top center_y - top_d * (1 scale);img.style.left center_x - left_d * (1 scale);} else {console.log(放大超出 max * 100 %比例无法放大);}}}/*** 拖拽操作*///拖拽需要的全局变量const drag {status: false,lastX: null,lastY: null}box.onmousedown (event) {if (event.button 0) {//鼠标会移出元素甚至移出到浏览器外部使用document监听移动就可以不受影响。document.onmousemove (event) {if (drag.status) {let mx event.clientX - drag.lastXlet my event.clientY - drag.lastYdrag.lastX event.clientXdrag.lastY event.clientYlet top img.offsetTop mylet left img.offsetLeft mx//拖拽超出容器外部无意义可能找不回因此图片位置不能任意拖拽至少有一个角或一个边在容器内部这里减10就是预留出的宽度img.style.left getRange(left, img.clientWidth - 10, box.clientWidth - 10) px;img.style.top getRange(top, img.clientHeight - 10, box.clientHeight - 10) px;//如果你不想让图片跑出容器那就调整这里就好了控制两个相邻边就能控制整个图片如// img.style.left getRange(left,0, box.clientWidth - img.clientWidth) px;// img.style.top getRange(top,0, box.clientHeight - img.clientHeight) px;}}//鼠标松开初始化操作如果鼠标在元素外部松开元素的松开监听是获取不到的因此需要用document监听document.onmouseup (event) {if (event.button 0) {drag.status falsedocument.onmousemove nulldocument.onmouseup null}}drag.status truedrag.lastX event.clientXdrag.lastY event.clientY}}}/script/body/html 进阶版 这样使用还是很不方便于是浓缩成一个函数传入url便可直接预览 /** * 图片预览函数调用后自动预览图片 * param {图片地址} imgurl */ function openImagePreview(imgurl) {if (!imgurl) return;//定义参数const max 20;//放缩原图倍数const scale 0.05;//滚轮一下缩放的变化比例 越大放缩越快//定义对象const box document.createElement(div);box.style.cssText position: fixed;top:10px;left:10px;z-index: 10000;background-color: rgba(0,0, 0, 0.3);width: (document.documentElement.clientWidth - 20) px;height: (document.documentElement.clientHeight - 20) px;border: 1px solid #000000;overflow: hidden;cursor: grab;;const img document.createElement(img);img.style.cssText position: absolute;object-fit: contain;user-select: none;-webkit-user-drag: none;user-select: none;-moz-user-select: none;-webkit-user-select: none;-ms-user-select: none;;img.src imgurl;img.title 预览;const close document.createElement(button);close.innerText X;close.style.cssText position: absolute;font-size: 30px;color: rgba(255,255, 255, 0.6);top:20px;right:20px;font-weight: bold;background: none;outline: none;border: none;;close.onclick () {document.body.removeChild(box);}box.append(img);box.append(close);document.body.append(box);/*** 图片已加载完毕后,对图片居中* 图片一开始其实默认是居中的只不过是img的object-fit: contain属性进行了居中并且产生了一些边缘填充空白* 这些填充的空白会影响后续图片拖拽的计算因此需要将img修改成图片展示的真实大小但对用户视觉不发生改变。*/img.onload function () {const imgRatio img.naturalWidth / img.naturalHeight; //图片横纵比const boxRatio box.clientWidth / box.clientHeight; //容器横纵比/*** 因为拿到的图片真实大小不是显示大小需要手动放缩适配到容器中* 当图片横纵比大于容器横纵比图片保持比例的情况下填充容器此时只能对图片的横向放缩填充全部容器 * 当图片横纵比小于容器横纵比图片保持比例的情况下填充容器此时只能对图片的纵向放缩填充全部容器 * 这个规律可以自己画图试验一下*/if (imgRatio boxRatio) {const scale box.clientWidth / img.naturalWidth;img.style.width box.clientWidth; //长度填充img.style.height img.naturalHeight * scale; //高度自适应img.style.top Math.ceil((box.clientHeight - img.clientHeight) / 2) px;//位置居中} else {const scale box.clientHeight / img.naturalHeight;img.style.height box.clientHeight;//高度填充img.style.width img.naturalWidth * scale;//长度自适应img.style.left Math.ceil((box.clientWidth - img.clientWidth) / 2) px;//位置居中}};//用于元素拖拽时边界的参数限制入参{ 实际值左区间右区间 }const getRange (actual, limita, limitb) {if (actual -limita) {return -limita;} else if (actual limitb) {return limitb;}return actual;}/*** 缩放操作* */box.onwheel (event) {event.preventDefault(); //关闭默认事件const center_x event.clientX;const center_y event.clientY;const wheelDelta event.deltaY;const top_d center_y - img.offsetTop;const left_d center_x - img.offsetLeft;if (wheelDelta 0) {//缩小 往后推滚轮 【滚轮值和缩放关系不是固定的你也可以反过来】let modifyHeight img.clientHeight * (1 - scale);let modifyWidth img.clientWidth * (1 - scale);if (modifyHeight * max img.naturalHeight) { //只在比例范围内放缩img.style.height modifyHeight;img.style.width modifyWidth;img.style.top center_y - top_d * (1 - scale);img.style.left center_x - left_d * (1 - scale);} else {console.log(缩小超出 max * 100 %比例无法缩小);}} else {//放大 往前推滚轮let modifyHeight img.clientHeight * (1 scale);let modifyWidth img.clientWidth * (1 scale);if (modifyHeight img.naturalHeight * max) { //只在比例范围内放缩img.style.height modifyHeight;img.style.width modifyWidth;img.style.top center_y - top_d * (1 scale);img.style.left center_x - left_d * (1 scale);} else {console.log(放大超出 max * 100 %比例无法放大);}}}/*** 拖拽操作*///拖拽需要的全局变量const drag {status: false,lastX: null,lastY: null}box.onmousedown (event) {if (event.button 0) {//鼠标会移出元素甚至移出到浏览器外部使用document监听移动就可以不受影响。document.onmousemove (event) {if (drag.status) {let mx event.clientX - drag.lastXlet my event.clientY - drag.lastYdrag.lastX event.clientXdrag.lastY event.clientYlet top img.offsetTop mylet left img.offsetLeft mx//拖拽超出容器外部无意义可能找不回因此图片位置不能任意拖拽至少有一个角或一个边在容器内部这里减10就是预留出的宽度img.style.left getRange(left, img.clientWidth - 10, box.clientWidth - 10) px;img.style.top getRange(top, img.clientHeight - 10, box.clientHeight - 10) px;//如果你不想让图片跑出容器那就调整这里就好了控制两个相邻边就能控制整个图片如// img.style.left getRange(left,0, box.clientWidth - img.clientWidth) px;// img.style.top getRange(top,0, box.clientHeight - img.clientHeight) px;}}//鼠标松开初始化操作如果鼠标在元素外部松开元素的松开监听是获取不到的因此需要用document监听document.onmouseup (event) {if (event.button 0) {drag.status falsedocument.onmousemove nulldocument.onmouseup null}}drag.status truedrag.lastX event.clientXdrag.lastY event.clientY}} } 使用方式 openImagePreview(./1719194464803.jpg);

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/82781.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

文章响应式网站wordpress 标签不显示图片

HT71778是一款高功率、全集成升压转换器,集成16mΩ功率开关管和18mΩ同步整流管,为便携式系统提供G效的小尺寸处理方案。 HT71778 实时音频信号跟踪同步升压转换器的特性: ・实时音频信号跟踪的电源供电 SN 短接地, VIN 2.7~4.5V, VOUT 5…

企业策划书内容专业网站优化制作公司

本文结合PTA专项练习带领读者掌握函数,刷题为主注释为辅,在代码中理解思路,其它不做过多叙述。 目录 6-1 计算A[n]1/(1 A[n-1])6-2 递归实现顺序输出整数6-3 自然数的位数(递归版)6-4 分治法求解金块问题6-5 汉诺塔6-6 重复显示字符(递归版)…

兰州网站建设哪家好网站图片尺寸

【RA6M3 HMI Board线下培训笔记】 RT Thread实现物联网应用 ETHMQTTLVGLRTOS 实现温湿度监测 1. 序言 随着物联网技术的飞速发展,越来越多的生活场景变得越来越智能,网联化、智能化越来越成为主旋律。 值此之际,RT-Thread 和 瑞萨电子共同…

深圳响应式网站价格无忧ppt模板下载 免费

环境变量 在操作系统中,环境变量是一种特殊的变量,它们为运行的进程提供全局配置信息和系统环境设定。本文将介绍如何自定义、删除环境变量,特别是对重要环境变量PATH的管理和定制,以及与环境变量相关的函数使用。 自定义环境变…

网站种类有哪些义乌联合外发加工网

利用域名获取IP gethostbyname() (该函数在Linux手册中已经被标注[[deprecated]]&#xff0c;不建议再使用。) #include <netdb.h>struct hostent* gethostbyname(const char* hostname);入参是域名字符串&#xff0c;返回值中存储了对应的IP地址。 struct hostent {…

网站定位与功能分析网站维护 英语

目录 1.应用程序与系统命令 2.RPM 2.1rpm软件包管理工具 2.2 rpm命令的形式 2.3查询rpm软件包 ​2.4安装、升级、卸载rpm软件包 2.5维护数据库 3.yum 3.1 配置本地yum源仓库 3.2 yum常用操作命令 3.3 源码编译安装软件 1.应用程序与系统命令 应用程序与系统命令的关系 典…

仿织梦长沙网站公司网站建设选题

分布式消息队列是一种在多个服务器、应用或服务之间进行消息传递的技术。它使得各个独立的组件可以通过异步消息进行通信&#xff0c;提高了系统的可扩展性、解耦性和可靠性。 典型应用场景 1. 异步处理 在许多系统中&#xff0c;某些任务的处理可能需要较长时间&#xff0c…

上海网站建设推荐案例网站模板 div

LDP --- 标签分发协议 --- 主要应用在MPLS的控制层面 MPLS控制层面需要完成的工作主要就是分配标签和传递标签。分配标签的前提是本地路由表中得先存在标签&#xff0c;传递标签的前提也是得先具备路由基础。所以&#xff0c;LDP想要正常工作&#xff0c;则需要IGP作为基础。 …

创世网站wordpress m1主题

iOS11 UICollectionView顶到屏幕顶端会出现一个20高度的白色间隔&#xff0c;是由于UICollectionView的自动调整功能为状态栏留出的位置 只需在创建UICollectionView时加入如下代码关闭自动调整&#xff1a; 该属性是iOS11新加入的&#xff0c;所以一定要在前面加上判断&#x…

北京外贸网站建设重庆市招标网

安防监控视频EasyCVR视频融合汇聚平台基于云边端智能协同&#xff0c;支持海量视频的轻量化接入与汇聚、转码与处理、全网智能分发等。音视频流媒体视频平台EasyCVR拓展性强&#xff0c;视频能力丰富&#xff0c;具体可实现视频监控直播、视频轮播、视频录像、云存储、回放与检…

地方招聘网站如何做推广免费网站怎么建

点击查看TechubNews更多相关推荐 一、DePIN&#xff1a;物理资源的新整合方式 Depin赛道的项目如雨后春笋般涌现&#xff0c;为市场注入了新的活力。作为先行者&#xff0c;Coinmanlabs已经深入布局Depin赛道&#xff0c;其中最引人注目的项目当属Grass。 什么是DePIN DePIN…

网站设计类型焊工培训技术学校

前言&#xff1a;本节内容主要了解链表的基本概念及特点&#xff0c;以及能够通过数组模拟学会链表的几种基本操作&#xff0c;下一节我们将通过STL模板完成链表操作&#xff0c;可以通过专栏进入查看下一节哦~ 目录 单链表及其特点 完整链表构成 完整链表简述 创建单链表 …

网站建设产品学历提升中心

ThinkPHP为了节省一些重复的步骤&#xff0c;写了个简单版的生成model的工具&#xff0c;逆向生成model代码&#xff0c;节省时间&#xff0c;专注写业务代码。 ThinkPHP中的命令行也提供了一些生成代码的命令&#xff1a; make:controller 创建控制器 make:model 创建模型 m…

长安网站建设制作公司品牌网站建设优化公司排名

int[][] arr1 new int[][]{{1,2},{1,2}}; int[][] arr2 arr1.clone(); 因为arr1!arr2所以我的意图是 修改arr2 在确定修改结束后 将arr2赋给arr1依此保证在arr2修改过程中arr1不变&#xff0c;&#xff0c;&#xff0c;但神奇的是竟然变了后来才注意到虽然arr1!arr2但arr1[0]…

网站开发建设费用包括那些北京网站建设比较好的公司

1 相关概念 1.1 守护进程的概念 守护进程也叫做精灵进&#xff0c;是运行在后台的一种特殊进程。它独立于控制终端并且可以周期性的执行某种任务或者处理某些发生的事件。 守护进程是非常有用的进程&#xff0c;在Linux当中大多数服务器用的就是守护进程。比如&#xff0c;web…

利用vs做网站设计一个网站要多久

Linux 安装 MySQL【超详细版】 ​编辑 我叫BuGu    2023-05-11 16:48:10 发布 一、安装 MySQL 的准备工作 1. 查看系统版本 cat /etc/redhat-release2. 查看系统是否已经安装过 MySQL 查看是否安装了 MySQL rpm -qa | grep mysql查看是否有安装 mariadb,该软件与 MySQ…

沂水建设局网站做竞价的网站做优化有效果吗

Weak Session IDs (弱会话) 当用户登录后&#xff0c;在服务器就会创建一个会话(session)&#xff0c;叫做会话控制&#xff0c;接着访问页面的时候就不用登录&#xff0c;只需要携带Sesion去访问。 sessionID作为特定用户访问站点所需要的唯一内容。如果能够计算或轻易猜到该…

龙岗网站建设价格谷歌关键词搜索排名

&#x1f61c;作 者&#xff1a;是江迪呀✒️本文关键词&#xff1a;日常BUG、BUG、问题分析☀️每日 一言 &#xff1a;存在错误说明你在进步&#xff01; 一、问题描述 微信小程序页面跳转的时候出现下面的问题&#xff1a; wx.redirectTo({url: /pages/index/i…

优化网站方法江油网站建设制作策划哪家专业

课程&#xff1a;课时46 优化问题实战_哔哩哔哩_bilibili 这就是我们今天要求的2D函数&#xff1a; 下图是使用python绘制出来的图像&#xff1a; 但是可以看出有4个最小值&#xff0c;但是还是不够直观&#xff0c;还是看课程里面给的比较好&#xff0c;蓝色是最低点位置&am…

网站建造免费装修网站模板

正题 luogu评测记录:https://www.luogu.org/recordnew/lists?uid52918&pidP3831 题目大意 有n∗nn*nn∗n的铁路网走一格代价为2&#xff0c;mmm个中转站可以改变方向代价为1。求两个点之间的最短路。 解题思路 我们发现n∗nn*nn∗n很大&#xff0c;所以我们考虑根据mmm…