实现DIV拖动

Ajax的到来让B/S中的客户端中开发有火了一把,网上出现了很多优秀的开源框架和UI,比较著名了有prototype,YUI,GWT等,但很多时候发现这些东西很难用到你的系统之中,有时候你的系统仅仅需要实现一两个UI功能,如果把整个架构都引入进来是不现实的。所以很多时候是需要自己动手去做一些工作。
现在弹出窗口在B/S系统中很受青睐,它有美观性和易用性等诸多特点,比如我用的sina 博客登陆窗口就是应用了弹出窗口。以前我们做弹出窗口只用一个window.open()搞定,但后来发现这种窗口有很多弊端,首先是界面的美观性差,其次是与主页面的交互性差(只有一个window.opener引用主页面)。所以在开发过程中要自己动手做一些这方面的事情。
于是很多人选择了用Div来实现但出窗口功能,用css来控制外观。但是,这对开发人员提出更高要求:窗口的定位、拖动、与主页面的交互等。。。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<style type="text/css">
.winFrame{position:absolute;border: outset gray 1px;height:400;width:500;
}
.winTitle{position:absolute;border-bottom:1px solid black;width:100%;height:20px;cursor:move;
}
.winContent{position:absolute;top:30px;width:100%padding: 10px;overflow: auto;
}
</style>
<SCRIPT LANGUAGE="JavaScript">function beginDrag(elem,event){var deltaX = event.clientX - parseInt(elem.style.left);var deltaY = event.clientY - parseInt(elem.style.top);document.attachEvent("onmousemove",moveHandler);document.attachEvent("onmouseup",upHandler);event.cancelBubble = true;event.returnValue = false;function moveHandler(e){if(!e)e = window.event;elem.style.left = (e.clientX - deltaX) + "px";elem.style.top = (e.clientY - deltaY) + "px";e.cancelBubble = true;}function upHandler(e){if(!e)e = window.event;document.detachEvent("onmousemove",moveHandler);document.detachEvent("onmouseup",upHandler);e.cancelBubble = true;}}
</SCRIPT>
</HEAD><div class="winFrame" style="left:50px;top:50px;"><div class="winTitle" onmousedown="beginDrag(this.parentNode,event);"> 标题 </div><div class="winContent">内容</div></div>
<BODY>
</BODY>
</HTML>

 

转载于:https://www.cnblogs.com/sherlockholmes/p/5286966.html

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

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

相关文章

ubuntu需要多大的固态硬盘_Ubuntu如何安装和优化SSD硬盘

SSD是固态硬盘&#xff0c;在Ubuntu下安装后需要对其进行优化设置&#xff0c;以便更好的使用SSD硬盘&#xff0c;下面小编就给大家介绍下Ubuntu安装和优化SSD硬盘的方法&#xff0c;感兴趣的朋友不妨来了解下。安装1.下载Ubuntu光盘镜像2.利用u盘安装此时&#xff0c;计算机已…

HEC-RAS二维溃坝洪水模拟(尾矿库)

1.建模 1.1新建工程文件 注意路径不要有中文&#xff0c;主义单位设置为国际单位SI 1.2导入地形数据 导入地形如图&#xff1a; 1.3建立几何模型 1)新建几何文件 2&#xff09;导入坝轴线 提前在GIS中制作坝轴线shp文件&#xff0c;注意在将制作好的坝轴线shp文件复制到工程…

Codeforces Beta Round #4 (Div. 2 Only) B. Before an Exam dp

B. Before an Exam题目连接&#xff1a; http://www.codeforces.com/contest/4/problem/B Description Tomorrow Peter has a Biology exam. He does not like this subject much, but d days ago he learnt that he would have to take this exam. Peters strict parents made…

mbsfn子帧_区分小区内子帧状态的方法、装置以及系统_2008100004878_说明书_专利查询_专利网_钻瓜专利网...

技术领域本发明涉及通信技术领域&#xff0c;尤其涉及一种区分小区内子帧状态的方法、装置以及系统。背景技术第三代组织伙伴计划(3GPP&#xff0c;Third Generation Partnership Projects)于2005年启动了第三代(3G&#xff0c;3rd Generati on)长期演进研究项目(LTE&#xff0…

解决导入myeclipse的项目注释和中文是乱码

1、先说真正解决我所遇到的问题的办法。 用记事本打开——另存为——格式改为UTF-8——保存后在myeclipse就正常显示了。 2、以下是网上找到的办法&#xff0c;试了一些并没有解决问题&#xff0c;但或许是中间必须的步骤吧。 一、更改工作空间编码格式 二、左边更改项目的编码…

fluent17.0中Iso surface设置

Setting up domain-最后一栏creat下拉 JIANZHIYOUDU

POJ 1860 Currency Exchange (SPFA松弛)

题目链接&#xff1a;http://poj.org/problem?id1860 题意是给你n种货币&#xff0c;下面m种交换的方式&#xff0c;拥有第s种货币V元。问你最后经过任意转换可不可能有升值。下面给你货币u和货币v&#xff0c;r1是u到v的汇率&#xff0c;c1是u到v的手续费&#xff0c;同理r2是…

fluent瞬态计算自动保存中cas和data文件全都保存还是只保存data

每一个输出结果同时保存cas文件和data文件 模型树-solution-Caculation activities-Autosave Every-Each time 效果如图&#xff1a; 每一个输出结果只保存data文件不保存cas文件&#xff0c;只有在修改计算设置后自动保存cas文件 模型树-solution-Caculation activities-Onl…

VirtualBox更改默认路径

我这几天想把所有的文件夹都改成英文的&#xff0c;避免运行一些软件的时候因为中文路径发生不必要的错误&#xff0c;怎么移动虚拟机呢&#xff1f;直接修改名字会出错的&#xff0c;网上很多方法什么改注册表&#xff0c;什么运行一大串命令&#xff0c;真的很麻烦&#xff0…

Tecplot如何导入多个DAT文件后激活solution time按钮

先导入CAS&#xff0c;后导入多个DAT文件——错误方式&#xff0c;激活不了。 正确方式&#xff1a;CAS文件和DAT文件同时导入&#xff1a; 此时已激活solution按钮

python修改mp3信息_Python修改MP3文件的方法

本文实例讲述了Python修改MP3文件的方法。分享给大家供大家参考。具体如下&#xff1a;用这个程序修改后的MP3比原来要小一些了&#xff0c;因为一张图片被删除了&#xff0c;起到了给MP3"瘦身"的作用。在一些mp3中&#xff0c;每个都有一张400多K的图片&#xff0c;…

蓝桥杯 无穷分数

无穷分数无穷的分数&#xff0c;有时会趋向于固定的数字。请计算【图1.jpg】所示的无穷分数&#xff0c;要求四舍五入&#xff0c;精确到小数点后5位&#xff0c;小数位不足的补0。请填写该浮点数&#xff0c;不能填写任何多余的内容。<span style"font-size:14px;&quo…

Tecplot如何提取某点数据并导出

Tecplot2018 选中曲线&#xff0c;右键&#xff0c;导出到文件&#xff0c;文件用记事本打开&#xff0c;复制到excel或者origin处理

shell 进入hadoop_Hadoop Shell命令

调用文件系统(FS)Shell命令应使用bin/hadoop fs 的形式。所有的的FS shell命令使用URI路径作为参数。URI格式是scheme://authority/path。对HDFS文件系统&#xff0c;scheme是hdfs&#xff0c;对本地文件系统&#xff0c;scheme是file。其中scheme和authority参数都是可选的&am…

css 水平垂直居中那些事

本文是在参考众大神文章基础上&#xff0c;整理的几个常用方案&#xff0c;另外也掺杂个人的一些猜想&#xff0c;如有不妥&#xff0c;请不吝指出下面开始正题,为了方便验证展示&#xff0c;下面的案例我会直接附上个人验证的源码截图 1. <!doctype html> <html lang…

python 循环指定次数_亮仔的Python之路Day7——Python循环语句

day7&#xff1a;2019-09-01今日学习目的&#xff1a;了解循环语句&#xff0c;使用代码解放劳动力实践是检验真理的唯一标准我们使用代码的最终目的是解放劳动力当你还在复制粘贴累的半死的时候别人随手几行代码就搞定今天学习的是2种循环语句一、什么是循环语句循环语句:可以…

iOS MBProgressHUD 之带底板的加载提示

文章来自&#xff1a;http://blog.csdn.net/ryantang03/article/details/7877120 MBProgressHUD是一个开源项目&#xff0c;实现了很多种样式的提示框&#xff0c;使用上简单、方便&#xff0c;并且可以对显示的内容进行自定义&#xff0c;功能很强大&#xff0c;很多项目中都有…

HEC-RAS如何修改SA/2D Connection的名称

RAS Mapper中打开几何文件&#xff0c;进入编辑模式。