明霞山资源网 Design By www.htccd.com
今天来讲一个很常用的拖拽功能,主要是利用一点css,js和jquery,很简单但同时也很重要,掌握好才是最关键的!
下面来看下效果图:
这里可以看到,在鼠标hover的时候会有一个透明度的变化和一个盒子阴影!并且在右下角会实时的显示出小方块移动时横纵坐标的变化!
可以看到有一个盒子阴影
在鼠标单击按住的时候会变红,然后可以拖动小块随意移动
我们在看代码之前可以先了解下jquery中的基本知识(选择器,css控制器什么的)和offset()和clientX,clientY。思路很简单,就是分别监听鼠标的 mousedown,mouseup,mousemove这三个事件,通过判断div移动之前的坐标,div移动之后的坐标(offset获得)和鼠标移动前后的坐标(clientX和clientY获得)判断div在body里的具体坐标位置,然后设置div在body里左边和上边的距离(left,top)。代码思路在代码里很详细!希望大家好好理解!
附上代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>拖动图片</title>
<style>
html {
height: 100%;
}
body {
margin: 0px;
padding: 0rem;
border: 0rem;
height: 100%;
width: 100%;
position: relative;
/* 取消默认的输入事件,不然会一直出现‘I'一样的光标 */
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
#drag {
height: 200px;
width: 200px;
background: teal;
border: none;
border-radius: 1rem;
/* 一定要是absolute */
position: absolute;
opacity: 0.8;
}
#drag:hover {
box-shadow: 0 8px 12px 0 rgba(16, 49, 231, 0.4);
opacity: 1;
cursor: pointer;
}
input {
width: 12rem;
height: 2rem;
font-size: 1.5rem;
border: 2px solid #aaa;
}
#input1 {
display: block;
position: absolute;
bottom: 1.2rem;
right: 1rem;
}
#input2 {
display: block;
position: absolute;
bottom: 1.2rem;
right: 16rem;
}
</style>
</head>
<body>
<div id="drag">
</div>
<input type="text" id="input1" name="y" placeholder="y轴的坐标为">
<input type="text" id="input2" name="x" placeholder="x轴的坐标为">
<!-- 引入内部jquery,大家使用可以引入CDN -->
<script src="/UploadFiles/2021-04-02/jquery-3.5.1.min.js">
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
明霞山资源网 Design By www.htccd.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
明霞山资源网 Design By www.htccd.com
暂无评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。


