照片墙拖动-1

 1 <!DOCTYPE html>
 2 <html>
 3     <head>
 4         <meta charset="UTF-8">
 5         <title></title>
 6         <style type="text/css">
 7             #ul1 {margin: 50px auto 0; padding: 0; width:630px; position: relative;}
 8             li {float: left; margin: 0 10px 10px 0; width: 200px; height: 150px; list-style: none;}
 9             li img {display: block;}
10         </style>
11         <script type="text/javascript">
12             window.onload=function()
13             {
14                  var oul = document.getElementById("ul1");
15                  var ali = document.getElementsByTagName("li");
16                  var lilen = ali.length;
17                  //转换定位
18 //                  for (var i=0;i<lilen;i++) {
19 //                     ali[i].style.position = "absolute";
20 //                 }
21                   //创建一个数组保存  每个图片的位置
22                   var  picwz =[];
23                  for (var i=0;i<lilen;i++) {
24                      picwz.push({
25                          left:ali[i].offsetLeft,
26                          top:ali[i].offsetTop
27                      })
28                  }
29                   for (var i=0;i<lilen;i++) {
30                      ali[i].style.left = picwz[i].left +"px";
31                      ali[i].style.top = picwz[i].top +"px";
32                      ali[i].style.position = "absolute";
33                      drag(ali[i])//调用拖动图片函数
34                  }
35                  function drag(obj)
36                  {
37                      var  disX = 0;
38                      var  disY = 0;
39                      obj.onmousedown = function(ev)
40                      {
41                          var ev = ev || event;
42                          disX = ev.clientX - obj.offsetLeft ;
43                          disY = ev.clientY - obj.offsetTop ;
44                          document.onmousemove = function(ev)
45                          {
46                              var ev = ev || event;
47                              obj.style.left = ev.clientX - disX +"px";
48                              obj.style.top = ev.clientY - disY +"px";
49                          }
50                          obj.onmouseup =function()
51                          {
52                              document.onmousemove = null;
53                              obj.onmouseup = null;
54                          }
55                      return false;
56                      }
57                  }
58             }
59         </script>
60     </head>
61     <body>
62         <ul id="ul1">
63             <li><img src="photo/1.jpg" alt="" /></li>
64             <li><img src="photo/2.jpg" alt="" /></li>
65             <li><img src="photo/3.jpg" alt="" /></li>
66             <li><img src="photo/4.jpg" alt="" /></li>
67             <li><img src="photo/5.jpg" alt="" /></li>
68             <li><img src="photo/1.jpg" alt="" /></li>
69             <li><img src="photo/2.jpg" alt="" /></li>
70             <li><img src="photo/3.jpg" alt="" /></li>
71             <li><img src="photo/4.jpg" alt="" /></li>
72         </ul>
73
74     </body>
75 </html>
时间: 2024-11-02 21:31:17

照片墙拖动-1的相关文章

照片墙拖动-3

效果:随机数组   索引值改变 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title></title> 6 <script src="js/move.js" type="text/javascript" charset="utf-8"></script&

Android照片墙加强版,使用ViewPager实现画廊效果

转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/12646775 记得关于照片墙的文章我已经写过好几篇了,有最基本的照片墙,有瀑布流模式的照片墙,后来又在瀑布流的基础之上加入了查看大图和多点触控缩放的功能.总体来说,照片墙这个Demo在这几篇文章的改进中已经变得较为完善了,本想关于这个功能的系列到此为止,但有朋友跟我反应,觉得在查看大图的时候最好能通过左右滑动来浏览前后的图片.恩,确实,好像比较高端的一些应用都有这样的效果,那么本

javascript继承(七)—用继承的方式实现照片墙功能

照片墙DEMO下载 注意:图片有四种类型:1可放大:2可拖动:3即可放大也可拖动:4都不行.由于每个图片的构造函数不同而不同 照片墙的实现是比较容易的,网上也有许许多多的事例.本篇文章将着重介绍一下用继承的方式怎么样去实现.使用继承又能带来怎样的好处.我们知道面向对象的优势在于可扩展性,这篇文章主要就是用面向对象的思想. 下面将具体的介绍如何实现照片墙: 首先是布局,将所有照片按顺序排列并不难,因为图片的宽高是不固定的,所以这儿只需要定义图片的高就行了,宽度会根据高度来缩放.又因为要实现拖动的效

*C#(WPF)--矩阵拖动和矩阵动画(拖动展开,不足动画效果)

最近在研发新的项目,遇到了一个桌面模式下的难点--展开动画.之前动画这方面没做过,也许很多人开始做的时候也会遇到相关问题,因此我把几个重点及实际效果图总结展示出来: 我的开发环境是在VS2017下进行的,这个工具条主要功能是:一个工具条,可进行拖拉.可进行拖拉展开,可在拖动之后不足展开并反向继续展开剩下的部分: 一.[拖动]   拖动的核心代码是通过矩阵进行定位和拖动的,定位是以父容器为模板的.以下是核心代码(及效果图): 1 /// <summary> 2 /// 这里TitleBar代指最

javascript照片墙效果

<!doctype html> <html> <head> <meta charset="UTF-8"> <title>锤子-直播照片墙拖拽技术-网站开发-网页特效</title> <style type="text/css"> *{margin:0;padding:0;} body{background:#000000;/*背景填充*/overflow:hidden;} #pers

可拖动GridView的实现,类似支付宝界面

1.概述 之前实现过一个仿支付宝界面的代码,可拖动网格视图.其实实现的原理网上都可以找到,我也是参考网上实现的方法,实现了自己需要的界面.并对实现的原理和方法进行了分析,现在进行总结,放太久都快忘记自己做过这回事了.原理和实现网上大部分地方都可以找到,我是根据自己的理解进行分析的,现在对之前的工作进行总结,了解实现的基本过程和方法.GridView拖动的源码来源于网上,根据需求修改成了需要的效果,下面简单说明下实现过程. 在说明实现之前,先上一张总体的界面效果图: 为了更好说明程序种各个变量的意

在Canvas上拖动产生文字

拖动的幅度越大,字就会越大. <!DOCTYPE html> <html> <head lang="en"> <style> html, body { width: 100%; height: 100%; margin: 0px; overflow: hidden; } canvas { cursor: crosshair; } span { font-family: 'Georgia', cursive; font-size: 40px

Unity3D拖动任意对象GameObject移动到任意地方

今天不是很忙,研究了一下拖拽GameObject移动到任意位置,沿x轴和z轴移动,其他的也就不说了,上代码: using UnityEngine; using System.Collections; public class DragAndDrog : MonoBehaviour {     private GameObject target;     private bool isMouseDrag;     private Vector3 screenPosition;     privat

CentOS6下基于Nginx搭建mp4/flv流媒体服务器(可随意拖动)并支持RTMP/HLS协议(含转码工具)

1.先添加几个RPM下载源 1.1)安装RPMforge的CentOS6源      [[email protected] ~]# wget -c http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm      [[email protected] ~]# rpm –import http://apt.sw.be/RPM-GPG-KEY.dag.txt      [[email