这个拖拽的图片不是唯一的,拿到代码自己添加一张照片就可以啦

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
*{
margin: 0;
padding:0;
}
body{
height: 100%;
width: 100%;
background: #0086B3;
}
#box{
width: 100px;
height: 100px;
border-radius: 100px;
background:linear-gradient(red,yellow);
position: absolute;/*定位,为下面拖拽提供css样式,必须有的*/
text-align: center;
line-height: 100px;
font-size: 20px;
font-weight: bold;
color: red;
}
img{
width: 50px;
height: 50px;
}
</style>
</head>
<body>
<div id="box"><img src="aa.gif" alt=""></div>
</body>
</html>
<script>
var box = document.getElementById("box");//获取id
box.onmousedown = function(e){//鼠标按下事件
var e = e || event;//事件对象兼容
e.preventDefault ? e.preventDefault():e.returnValue = flase;
//阻止字体被选中
var disx = e.offsetX || e.layerX;//计算相对盒子水平偏移量
var disy = e.offsetY || e.offsetY;//计算相对盒子垂直偏移量
document.onmousemove = function(e){//鼠标移动事件
var e = e || event;
//边界处理
var wx = window.innerWidth - 100;//水平移动范围限制
var wy = window.innerHeight -100;//垂直移动范围限制
var x = e.pageX - disx ;//计算鼠标水平偏移量
var y = e.pageY -disy ;//计算鼠标垂直偏移量
if(x < 0){//左边界限制
x = 0;
}else if(x > wx){//右边界限制
x = wx;
}
if(y < 0){//上边界限制
y = 0;
}else if(y > wy){//下边界限制
y = wy;
}
box.style.left = x + "px";//盒子css样式赋值
box.style.top = y + "px";
box.style.transform = "scale(2)";//放大两倍
// box.style.transform = "rotate(180deg)";
// box.style.cssText = "transform : scale(2) rotate(360deg);"
box.style.transition= "1s";//时间过渡1s
}
box.onmouseup = function(){//鼠标抬起事件
document.onmousemove = null;//删除鼠标移动事件
box.style.transform = "scale(1)";//盒子大小还原
/* box.style.transition= "none"; */

}
}
</script>

最新文章

  1. Convert BSpline Curve to Arc Spline in OpenCASCADE
  2. debug 断点无效
  3. 转载:jQuery实现返回顶部功能
  4. LVM增大和减小ext4、xfs分区
  5. SecureCRT中文显示乱码
  6. HDU 5795 A Simple Nim(简单Nim)
  7. PyCharm5.0.2最新版破解注册激活码(图文版)
  8. 【GOF23设计模式】模板方法模式
  9. python 可变数据类型&amp;不可变数据类型
  10. Redis基础知识之————如何处理客户端连接
  11. javascript基础知识--什么是构造函数?什么是实例化对象?
  12. UICollectionView reloadData后cell被隐藏
  13. iOS开发——C篇&amp;结构体与枚举
  14. Windows Service的安装卸载 和 Service控制
  15. Java线程:线程栈模型
  16. js基础01
  17. Resin4安装配置
  18. Shell 文本处理三剑客之grep
  19. 实验楼----PHP大法
  20. kafka结合Spark-streming的直连(Direct)方式

热门文章

  1. laravel 填充器Seed
  2. 安卓学习第一节--环境搭建及Android Studio 安装
  3. net::ERR_CONNECTION_RESET 问题排查
  4. java33
  5. 在IIS7上导出所有应用程序池的方法批量域名绑定
  6. 每日一练ACM 2019.0417
  7. Qt5对XML文件操作
  8. linux 环境统配
  9. Ubuntu 离线安装 docker
  10. 性能测试-----monkey稳定性测试