利用javascript移动div层-javascript 拖动层

利用javascript移动div层-javascript 拖动层:
程序功能:利用javascript开发在界面上随意拖动以下html code中的div层.
javascript移动div层-javascript 拖动层代码-
html code:


代码如下:

<div id="div_Info" style="display: none; dz-index: 101; left: 175px; width: 650px;
position: absolute; top: 346px;" align="center">
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<%-- 以下td中添加了javascript代码移动层,拖动层的几个事件
onmousedown事件当鼠标单击时发生
onmousemove 事件会在鼠标指针移动时发生
onmouseup 事件会在鼠标按键被松开时发生,
onmouseout 事件会在鼠标指针移出指定的对象时发生--%>
<td style="width: 628px; height: 22px; background-color: #3f3200;" class="div_table_bian"
onmousedown="movetianyamessage(div_Info, event)" onmousemove="movetianyamessageend(event);"
onmouseup="movetianyamessageend(event)" onmouseout="movetianyamessageend(event)">
</td>
<td style="width: 22px; background-color: #221B00; font-size: 12px; color: #ffffff;
height: 22px;" align="center" class="div_table_notLeft_bian" >
<a href="javascript:disponseNone(div_Info)" style=" color:White;">x</a></td>
</tr>
<tr>
<td colspan="2" style="background-color: #000000" align="center" valign="top" class="div_table_notTop_bian">
<table border="0" cellpadding="0" cellspacing="0" style="width: 90%">
<tr>
<td style="height: 25px;"></td>
</tr>
<tr>
<td style="height: 23px;" class="white12px" align="center">
<asp:Label ID="div_lblTitle" runat="server" Font-Size="16px"></asp:Label></td></tr>
<tr><td style="height: 15px" valign="top"></td></tr>
<tr><td id="Div_Td_Content" runat="server" class="white12px" valign="top"></td></tr>
<tr><td runat="server" class="white12px" valign="top" style="height: 15px"></td></tr>
<tr><td class="white12px" style="height: 40px" align="center" valign="middle">
<asp:ImageButton ID="ImageButton2" runat="server" ImageUrl="~/images/returns.jpg"
OnClientClick="disponse_div(div_Info);return false;" /></td></tr>
</table>
</td></tr>
</table>
</div>

javascript移动div层-javascript 拖动层代码-javascript code:


代码如下:

<script language="javascript">
// javascript文件
/*调用方法
//onmousedown="movetianyamessage(div_Info, event)" onmousemove="movetianyamessageend(event);"
//onmouseup="movetianyamessageend(event)" onmouseout="movetianyamessageend(event)"
//onmousedown=鼠标点下的时候 onmousemove=鼠标经过的时候 onmouseup=鼠标弹起来的时候 onmouseout=鼠标离开的时候
*/
var tianyamessage = ''
var iLayerMaxNum = 999;
document.onmouseup = movetianyamessageend;
document.onmousemove = movetianyamessagestart;
var tianyamessagepixefX;
var tianyamessagepixefY;
function movetianyamessage(Object, event)
{
tianyamessage = Object.id;
if(document.all)
{
document.getElementById(tianyamessage).setCapture();
tianyamessagepixefX = event.x - document.getElementById(tianyamessage).style.pixelLeft;
tianyamessagepixefY = event.y - document.getElementById(tianyamessage).style.pixelTop;
}
else if(window.captureEvents)
{
window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);
tianyamessagepixefX = event.layerX;
tianyamessagepixefY = event.layerY;
}
document.getElementById(tianyamessage).style.zIndex = iLayerMaxNum;
iLayerMaxNum = iLayerMaxNum + 1;
}
function movetianyamessagestart(evt)
{
if(tianyamessage!=''){
if(document.all)
{
document.getElementById(tianyamessage).style.left = event.x - tianyamessagepixefX;
document.getElementById(tianyamessage).style.top = event.y - tianyamessagepixefY;
}
else if(window.captureEvents)
{
document.getElementById(tianyamessage).style.left = (evt.clientX - tianyamessagepixefX) + "px";
document.getElementById(tianyamessage).style.top = (evt.clientY - tianyamessagepixefY) + "px";
}
}
}
function movetianyamessageend(evt)
{
if(tianyamessage!='')
{
if(document.all)
{
document.getElementById(tianyamessage).releaseCapture();
tianyamessage='';
}
else if(window.captureEvents){
window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);
tianyamessage='';
}
}
}
function disponse_div(obj)
{
if(obj.style.display=="block")
{
obj.style.display="none";
}
else
{
obj.style.display="block";
}
}
</script>

(0)

相关推荐

  • js实现悬浮窗效果(支持拖动)

    经常可以看到大部分的官网有右侧悬浮在线客服.今天来写写! 效果图: 代码如下: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>js悬浮窗代码(支持拖动)</title> <meta name="descriptio

  • javascript 事件处理、鼠标拖动效果实现方法详解

    先看看要拖动的层(模拟窗口)的效果图吧. 要实现的拖动效果:鼠标左键在窗口上方的标题栏上按下,同时移动鼠标,窗口跟着移动.窗口: 复制代码 代码如下: <div id="win"> <div id="win_header"></div> </div> 一点准备工作: 要让窗口能自由移动,那么窗口的定位(position)应该采用绝对定位(absolute): 给窗口添加标题栏,这里使用一个放在窗口顶部的层实现,同时将标

  • js实现可拖动DIV的方法

    随着时代的变化,越来越感觉到js的重要性,js不仅可以做web页面(如Ext框架),还可以做一些web的特效,这些特效不仅兼容PC,而且兼容手机端,毕竟是基于浏览器的,和平台没关系.现在微软的windows8 系统的App都可以用js开发了,大家有时间可以去尝试一下. 现在切入正题,说一下js 实现可拖动Div.实现这个功能我们先说一下思路: 1.捕捉鼠标div的mousedown事件 2.捕捉 document的   mousemove事件 3.取消事件 然后我们看一下代码: 复制代码 代码如

  • 比较精简的Javascript拖动效果函数代码

    拖动效果函数演示 by Longbill.cn body { font-size:12px; color:#333333; border : 0px solid blue; } div { position : absolute; background-color : #c3d9ff; margin : 0px; padding : 5px; border : 0px; width : 100px; height:100px; } function drag(o,s) { if (typeof

  • js实现div在页面拖动效果

    本文实例讲述了js实现div在页面拖动效果.分享给大家供大家参考,具体如下: <style type="text/css"> body { margin: 0px; } #div1 { display: none; position: absolute; z-index: 1000; height: 100%; width: 100%; background: #000000; filter:Alpha(opacity=30); } #div2 { display: non

  • javascript div 弹出可拖动窗口

    /* * 创建弹出div窗口. 1.接口说明:DivWindow(id,title,width,height,content) 构造函数,创建一个弹出窗口对象 参数:id 弹出窗口id: title:弹出窗口标题名称: width:弹出窗口宽度 height:弹出窗口高度 content: 弹出窗口显示内容 2.接口说明: closeDivWindow(id) 关闭窗口 参数: id 弹出窗口id 3.接口说明:setPopupTopTitleFontColor(PopupTopTitleFon

  • js 鼠标拖动对象 可让任何div实现拖动效果

    js鼠标拖动对象: 复制代码 代码如下: //定义鼠标拖动对象 drag=function (a,o){      var d=document;if(!a)a=window.event;         if(!a.pageX)a.pageX=a.clientX;         if(!a.pageY)a.pageY=a.clientY;      var x=a.pageX,y=a.pageY;      if(o.setCapture)          o.setCapture();

  • 鼠标拖动动态改变表格的宽度的js脚本 兼容ie/firefox

    table拖动(兼容Firefox 3.5/IE6),固定表格宽度 table拖动(兼容Firefox 3.5/IE6),固定表格宽度 watch_dog){ o.p_p_p_sw(o.parentNode.cellIndex+1,watch_dog-o.p_p_c_gw(0)); return; } var t=a.clientX-lastX;out.innerHTML=t; if(t>0) {//right if(parseInt(o.parentNode.parentNode.cells[

  • 使用ExtJS技术实现的拖动树结点

    一.结点拖放的位置 拖放结点包含了两个动作,拖(drag)和放(drop).拖很好理解,就是将结点拖起来,拖哪一个结点的效果都是一样的.不过放结点就比较复杂了.放结点可分为如下两种情况: 追加(append)结点:如果将拖动的结点正好放在非叶子结点的上面,TreePanel组件会将这个结点移动到非叶子结点下面作为该结点的子结点.由于TreePanel的限制,叶子结点不能append. 在同一层做上下移动(above和below): 如果将拖动的结点放在叶子结点上,或放在非叶子结点的侧面,会将拖动

  • js实现鼠标拖动功能

    效果图: 代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> #div{ width: 200px; height: 200px; background: green; position: absolute; } #div2{ width:

随机推荐