- 浏览: 497008 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (247)
- java框架-struts2 (11)
- java框架-spring (6)
- 开发工具-myeclipse (8)
- 技术标准-webservice (1)
- 技术标准-opensaml2 (1)
- 开发语言-java (13)
- 开发语言-asp (4)
- 数据库-oracle (25)
- 数据库-mysql (4)
- 前端开发-css (15)
- 前端开发-javascript (34)
- 图片处理 (7)
- 事务处理 (1)
- SVN (2)
- 系统-linux (41)
- 系统-solaris (13)
- 系统-windows (8)
- web容器-glassfish (5)
- 单点登录-Shibboleth (0)
- 其他技术 (18)
- 技术无关 (6)
- 开发语言-jsp (2)
- 前端开发-html (1)
- LDAP相关 (11)
- 单点登录-cas (0)
- php (0)
- 门户-uportal (0)
- 单点登录-opensso (1)
- json (1)
- Android (2)
最新评论
-
wzwahl36:
http://www.atool.org/ico.php这个生 ...
Photoshop制作Favicon.ico图标(转载) -
wgimperial:
帮我解决了问题,谢谢LZ
如何让 href 失效(转) -
Finishx:
[color=olive][/color][size=medi ...
iframe跨域(转) -
q79969786:
不能删,上了这个workspace就是空的了
java.lang.NoClassDefFoundError: org/eclipse/core/resources/IContainer -
hw1287789687:
showrev
在SOLARIS下如何查看版本号
这是一个拖动布局的例子,不是拖放到页面的任意位置,而是页面上有很多格子,每个格子间可互换位置。将该文件保存为html文件,即可查看效果。本实例没有使用什么高深的技术,紧紧使用了css+div JavaScript
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="UTF-8"> <head> <title>JavaScript Google IG Drag Demo</title> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <meta http-equiv="Content-Language" content="zh-cn" /> <style type="text/css"> .col_div{ float:left; width:700px; height:auto; color:#fff; margin-left:10px; text-align:center; padding:0px; text-align:center } .drag_div{ margin:1px auto; border:1px solid #1b243d; padding:0px; float:left; border:solid 1px black; } .modbox{ border:1px solid #1b243d; padding:0px; float:left; width:80px; height:80px; margin:1px auto; } .drag_header{ font-weight:bold; height:80px; width:80px; padding:0px; margin:0px; border:solid 0px red; text-align:center; line-height:80px; } .no_drag{ height:0px; overflow:hidden; padding:0; border:0;} </style> </head> <body> <div id="col_1" class="col_div"> <!-- 用 JavaScript 绘制 128 个 div --> <script type="text/javascript"> for(var i = 0 ; i < 128 ; i++){ document.write('<div id="drag_' + i + '" class="drag_div" style="background:#F50;"><div id="drag_' + i + '_h" class="drag_header"> #' + i + '</div></div>'); } </script> </div> <script type="text/javascript"> //该方法得到当前窗口被卷去的部分的高度,是一个大于等于0的值 function getScroll() { var t, l, w, h; //当前窗口有被卷去的部分,即有滚动条的时候,执行这句 if (document.documentElement && document.documentElement.scrollTop) { t = document.documentElement.scrollTop; l = document.documentElement.scrollLeft; w = document.documentElement.scrollWidth; h = document.documentElement.scrollHeight; } //当前窗口无被卷去的部分,即无滚动条的时候 else if (document.body) { t = document.body.scrollTop; l = document.body.scrollLeft; w = document.body.scrollWidth; h = document.body.scrollHeight; } return t; } dragDrop={ absPos:function(node){ var t=getScroll(); var y=-t; var x=a=0; do { x+=node.offsetLeft; y+=node.offsetTop; a+=node.offsetTop; } while(node=node.offsetParent); return { 'x':x, 'y':y, 'a':a }; } ,isIntersect:function(x,y,node){ var m=this.absPos(node), xx=m.x, yy=m.y; return !(x<xx|| y<yy|| x>(xx+node.offsetWidth)|| y>(yy+node.offsetHeight) ); } ,drag:function(hander,ini){ var def={dir:'xy',minIndex:1,end:String,isMove:true}; ini=ini||{}; for(var key in ini )def[key]=ini[key]; ini=def; var dragObj=moveObj=ini.win||hander; var $me=moveObj; if(ini.isMove)moveObj.style.position="absolute"; hander.onmousedown=function (e){ this.style.cursor=ini.cursour||"move"; if(ini.box!=undefined){ var rect=document.createElement('DIV') ,pos=dragDrop.absPos($me); rect.style.cssText='top:'+pos.y+';left:'+pos.x +';border:dashed 1px #666;' +'height:'+$me.offsetHeight+'px;' +'width:'+$me.offsetWidth+'px;background:none;position:absolute;'+ini.box; var pos=dragDrop.absPos(dragObj); rect.style.top=pos.a+'px'; rect.style.left=pos.x+'px'; moveObj=document.body.appendChild(rect); moveObj.innerHTML=dragObj.innerHTML; }; e=window.event||e; this.prevOverObj_x=e.clientX; this.prevOverObj_y=e.clientY; this.x=e.clientX-moveObj.offsetLeft; this.y=e.clientY-moveObj.offsetTop; document.title=[dragObj.offsetLeft,this.x,this.y] moveObj.style.zIndex=(dragDrop.zIndex? dragDrop.zIndex++: dragDrop.zIndex=1)+ini.minIndex; if(document.all){ hander.onlosecapture=dragStop; e.cancelBubble=true; hander.setCapture(); }else{window.onblur=dragStop;e.stopPropagation()}; dragDrop.onBegin.call(dragObj,moveObj);/* my Event */ document.onmousemove=function(e){ e=e||window.event; var $x=undefined,$D=document,$W=window; var x=e.clientX-hander.x,y=e.clientY-hander.y; if($x!=ini.left)x=Math.max(x,ini.left); if($x!=ini.top)y=Math.max(y,ini.top); if($x!=ini.right)x=Math.min(x,ini.right-dragObj.offsetWidth); if($x!=ini.bottom)y=Math.min(y,ini.bottom-dragObj.offsetHeight); if(ini.dir.indexOf('x')!=-1)moveObj.style.left=x+"px"; if(ini.dir.indexOf('y')!=-1)moveObj.style.top=y+"px"; if($D.all){hander.setCapture();e.cancelBubble=true; }else{window.onblur=dragStop;e.stopPropagation()} $W.getSelection && $W.getSelection().removeAllRanges(); dragDrop.onDrag.call(dragObj,moveObj,e.clientX,e.clientY);/* my Event */ }; function dragStop(e){ var $D=document; e=window.event||e; $D.onmousemove=$D.onmouseup=null; if($D.all){hander.onlosecapture=null;hander.releaseCapture(); }else{window.onblur=null} if(ini.box!=undefined){ if(ini.isMove){ $me.style.left=parseInt(moveObj.style.left)+'px'; $me.style.top=parseInt(moveObj.style.top)+'px'; } $D.body.removeChild(rect); }; dragDrop.onDrop.call(dragObj);/* my Event */ }; document.onmouseup=dragStop; }; return this; } ,onIntersect:function(){} ,onDrag:function(){} ,onBegin:function(){} ,onDrop:function(){} ,U:{prevOverObj:null} }; dragDrop.onDrag=function (mover,x,y){ for (var i=0;i<divs.length;i++ ) { if(dragDrop.isIntersect(x,y,divs[i])){ dragDrop.onIntersect.call(this,divs[i]); break; } } }; dragDrop.onBegin=function (){ this.style.visibility='hidden'; } dragDrop.onDrop=function (){ var __this=this,i=0; this.style.visibility='visible'; dragDrop.U1.style.background='#F50'; if(this==dragDrop.U1)return; var pos=dragDrop.U1.nextSibling; if(pos==this){ this.parentNode.insertBefore(this,dragDrop.U1); }else{ this.parentNode.insertBefore(dragDrop.U1,this); this.parentNode.insertBefore(this,pos); } (function (){ dragDrop.U1.style.background=__this.style.background=['#F50','#FFFF33'][i%2]; if(i++<4)setTimeout(arguments.callee,100) })(); } dragDrop.onIntersect=function(overObj){ if(dragDrop.U1) dragDrop.U1.style.background='#F50'; if(overObj!==this){ overObj.style.background='#33CC00'; }; dragDrop.U1=overObj; }; window.onload=function (){ shell=document.getElementById("col_1"); alldiv=shell.getElementsByTagName('DIV'); divs=[]; for (var i=0;i<alldiv.length;i++ ) { if(alldiv[i].className=='drag_div')divs.push(alldiv[i]) } g=dragDrop.absPos(shell); g2=g.x+shell.offsetWidth-45; g3=g.y+shell.offsetHeight; for (var i=0;i<divs.length;i++ ) { dragDrop.drag( divs[i],{ box:'background:#eee;filter:alpha(opacity=80);opacity:0.8', cursour:'pointer', isMove:0, left:g.x, top:g.y, right:g2, bottom:g3 }); } } </script> </body> </html>
发表评论
-
回调函数实例
2013-08-21 09:14 677<script type="text/ja ... -
jquery完全遮盖+弹出框
2013-08-20 15:23 1122<!DOCTYPE HTML PUBLIC &quo ... -
ul li 拖动排序jquery-ui.js
2013-07-30 15:40 1649<html> <head> ... -
table tr 拖动排序插件jquery.tablednd.js
2013-07-30 15:31 2988<html> <head> ... -
可移动弹出层
2012-09-21 14:32 849<!DOCTYPE html PUBLIC " ... -
[转]jquery的checked以及disabled
2012-01-16 10:51 1204http://archive.cnblogs.com/ ... -
javascript实现图片轮换效果
2011-11-29 16:46 1597<script type="text/java ... -
js动态加载css文本
2011-11-10 15:26 968<html> <head> ... -
MathJax+MathML
2011-09-06 10:46 2250<html> <head> ... -
js中使用正则表达式实现replaceAll方法
2011-08-26 15:55 1116http://www.360doc.com/content/1 ... -
js控制onclick事件实例
2011-04-27 12:33 1594<html> <head> ... -
判断iframe是否加载完毕的方法(兼容ie和Firefox)(转)
2011-04-27 10:30 1703<html> <head> < ... -
颜色搭配器
2011-03-10 11:41 1396<!DOCTYPE HTML PUBLIC " ... -
浮动图片 广告图片 示例
2011-01-11 15:00 1315<!DOCTYPE html PUBLIC " ... -
经常会遇到这样一种情况。 在iframe里嵌入另外一个页面时。如果iframe载入的页面响应较快,或许我们感觉不到页面载入的不同步,但试想,如果一个需要内嵌到i
2010-12-26 15:28 464经常会遇到这样一种情况。 在iframe里嵌入另外一个页面时 ... -
iframe载入完成时的事件监听
2010-12-26 15:27 1613经常会遇到这样一种情况。 在iframe里嵌入另外一个页面时 ... -
屏蔽键盘及鼠标相关代码
2010-12-26 14:09 1050<!DOCTYPE HTML PUBLIC " ... -
iframe+js实现页面全屏、淡入淡出切换
2010-12-26 14:07 3707index.html <html> <h ... -
iframe 父窗口和子窗口相互的调用方法集锦
2010-12-26 11:25 1688一、父窗口调用iframe子窗口方法 1、HTML语法: ... -
js判断浏览器类型
2010-12-24 13:21 789var Sys = {}; ...
相关推荐
在"bootstarp拖拽布局例子"中,我们主要关注的是如何利用Bootstrap的工具和特性来实现用户友好的拖拽布局,这在设计网页时非常实用,尤其是对于希望创建类似于QQ空间小窝布局模式下自由布局的体验。 Bootstrap的...
**PHP + MySQL + JS 拖拽Div实例详解** 在Web开发中,用户交互性是提升用户体验的关键因素之一。拖拽功能(Drag and Drop)可以让用户通过鼠标直接操作页面元素,增强了网页的互动性。本实例将介绍如何使用PHP、...
这个“jQuery支持自定义拖拽布局插件Portal.zip”文件显然是一个包含jQuery插件的压缩包,该插件允许用户在网页上创建可自定义拖放的布局。在本文中,我们将深入探讨jQuery、拖拽布局以及如何利用这种插件来增强用户...
5. **实例代码**: 通常,我们会在一个组件类中设置拖放行为,例如一个List组件。在`itemMouseDown`事件中启动拖动,而在目标组件中监听`dragDrop`事件来处理放下动作。 ```actionscript // List组件上的拖动...
本文将深入探讨如何在Web前端实现拖放功能,通过实例分析不同实现方式的优缺点,帮助开发者选择最适合项目需求的解决方案。 首先,让我们了解拖放的基本原理。拖放功能涉及两个主要事件:`dragstart`、`drag`、`...
其中,拖拽布局(Draggable Layout)是一种常见的增强用户体验的技术,它允许用户通过鼠标直接拖动元素来改变页面布局。本文将深入探讨如何利用jQuery实现这样的功能。 **一、jQuery简介** jQuery是一款轻量级的...
iframe网页上下左右布局模板,可以修改里面的css代码来更改各个模块的大小,位置。很基本使用的网页布局模板
在这个"jQuery拖动实例(25种实例)"中,我们将探讨如何利用jQuery实现类似Google应用中的拖放效果。拖放功能在现代网页设计中非常常见,比如在文件管理、日历应用或者界面元素布局中都有其身影。 首先,jQuery的...
本Demo,"android拖动布局Demo",提供了实现这一功能的实例代码,旨在帮助开发者理解如何在自己的应用中实现类似的功能。 首先,我们来讨论拖动布局的核心概念。在Android中,拖放操作涉及到`ViewDragHelper`类,这...
本实例以"拖动按钮"为主题,旨在提供一个简单的实现方案,让用户能够自由地移动按钮,类似于手机锁屏界面的滑动解锁功能。 首先,我们要理解拖动操作的基本原理。在编程中,拖动操作通常涉及鼠标或触摸屏的按下、...
制作可拖拽的div是实现用户交互的一种常见方法,常用于创建自定义控件、布局管理或模拟物理对象的移动。 首先,确保引入jQuery库。在HTML文件(如`drage.html`或`test.html`)的`<head>`部分,添加以下代码来引用...
//实例菜单树形 menuTree:new Ext.tree.TreePanel({ title:'功能菜单', region:'west', bodyStyle:'background:transparent url(images/default/panel/group-lr.gif) repeat-x 0 bottom;', id:'extExample-tree', ...
本文将详细讲解如何实现一个可以上下左右拖动,并且能加载不同布局的RecyclerView。 首先,理解RecyclerView的基本结构。RecyclerView由Adapter、LayoutManager和ViewHolder三部分组成。Adapter负责填充数据,...
总的来说,这个"div拖拽实例"涉及到的知识点包括jQuery库的使用、`draggable()`方法、CSS样式设计、可能的布局系统集成以及浏览器兼容性问题。通过理解这些概念和技术,开发者可以创建出更具互动性的网站元素,提升...
iGoogle允许用户自定义主页,添加各种小工具并进行布局调整,这个实例则提供了类似的功能实现,包括双击编辑和网页元素的拖动功能。 在Web开发中,实现这样的功能需要掌握以下关键技术点: 1. **HTML**:作为网页...
【jQuery图片拖拽实例】是一个基于JavaScript库jQuery实现的交互式功能,允许用户通过鼠标拖动操作来移动页面上的图片。这个实例展示了如何利用jQuery的事件处理和DOM操作能力,为用户提供直观且易于使用的界面体验...
本文将深入探讨PyQt5中的QSplitter布局控件,这是一个动态的布局管理器,允许用户通过拖动边界来调整子控件的大小。 QSplitter控件在PyQt5中扮演着重要的角色,它能够根据用户的交互动态调整子控件的尺寸。当用户...
4. **拖拽布局**:拖拽布局是一种用户友好的设计方式,用户可以通过鼠标直接拖动控件来改变其位置和大小。在WinForm中,可以实现此功能通过处理控件的`MouseDown`、`MouseMove`和`MouseUp`事件,配合计算鼠标的相对...
在“Android ImageView 拖拽实例”中,我们主要关注的是如何赋予ImageView手势操作的能力,让用户能够通过触摸屏幕来移动ImageView。这个实例的实现涉及到以下几个关键知识点: 1. **监听触摸事件**:首先,我们...
JavaScript的事件模型使得我们可以对用户的交互做出实时响应,而CSS则提供了丰富的视觉效果和布局控制。通过结合这两者,我们可以创造出高度互动的网页元素,提高用户的参与度和满意度。 在实际应用中,可能还需要...