adandelion

诗词在线 http:/www.chinapoesy.com


诗词在线 |唐诗|宋词|元曲|诗经|离骚|乐府|现代诗歌

博客园 首页 联系 订阅 管理

http://jkisjk.vip.sina.com/html/MoveTableWithMouse.htm
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>JK:支持民族工业,尽量少买X货</title>
</head>

<body>
用鼠标移动层<br>
部分代码来自网友 xinyunyishui(心云意水) 对网友 chenxiang123 所开贴的回复:<br>
http://community.csdn.net/Expert/topic/3469/3469939.xml?temp=.6519739

<br>

<select><option>Select for Test</select>

 

<iframe  style="position:absolute;z-index:9;width:expression(this.nextSibling.offsetWidth);height:expression(this.nextSibling.offsetHeight);top:expression(this.nextSibling.offsetTop);left:expression(this.nextSibling.offsetLeft);" frameborder="0" ></iframe>
<table style="position:absolute;top:0;left:0;width:200;height:200;background-color:cccccc;z-index:10" id=theAlterableTable >
<tr >
  <td style="width:1" bgcolor=#cccccc rowspan=3 ></td>
  <td bgcolor=#cccccc colspan=2 style="cursor:move;" align=center onmousedown=MouseDownToRemove(this) onmousemove=MouseMoveToRemove(this) onmouseup=MouseUpToRemove(this) >
    header
  </td>
 
</tr>
<tr rowspan=2>
  <td style="padding-bottom:3;padding-right:3;background-color:blue;height:100%" valign=top>
   
    content<br>
    content<br>
    content<br>
    content<br>
    content<br>

  </td>
<td bgcolor=#cccccc style="cursor:e-resize;width:1" onmousedown=MouseDownToResize(this) onmousemove=MouseMoveToResize(this,true,false) onmouseup=MouseUpToResize(this) ></td>
</tr>
<tr style="font-size:1">
  <td bgcolor=#cccccc style="cursor:n-resize;" onmousedown=MouseDownToResize(this) onmousemove=MouseMoveToResize(this,false,true) onmouseup=MouseUpToResize(this) ></td>
  <td bgcolor=#cccccc style="cursor:se-resize;" onmousedown=MouseDownToResize(this) onmousemove=MouseMoveToResize(this,true,true) onmouseup=MouseUpToResize(this) ></td>
</tr>
</table>

</body>
</html>

<script language=javascript>

var beginMoving=false;
var beginResizing=false;

function MouseDownToRemove(obj){
 obj.mouseDownX=event.clientX;
 obj.mouseDownY=event.clientY;
 obj.offsetParentOffsetLeft=theAlterableTable.offsetLeft;
 obj.offsetParentOffsetTop=theAlterableTable.offsetTop;
 beginMoving=true;
 obj.setCapture();
}
function MouseMoveToRemove(obj){
    if(!beginMoving) return false;
 if(event.x>1) //防止被移出页面之外,造成无法移回的后果
   theAlterableTable.style.left = obj.offsetParentOffsetLeft+(event.x-obj.mouseDownX);
 if(event.y>1)
   theAlterableTable.style.top = obj.offsetParentOffsetTop+(event.y-obj.mouseDownY);;
}
function MouseUpToRemove(obj){
 obj.releaseCapture();
 beginMoving=false;
}

function MouseDownToResize(obj){
 beginResizing=true;
 obj.setCapture();
 theAlterableTable.w=event.x-theAlterableTable.style.pixelWidth;
 theAlterableTable.h=event.y-theAlterableTable.style.pixelHeight;
}
function MouseMoveToResize(obj,changeW,changeH){
    if(!beginResizing) return false;
    try //try 的目的是:屏敝给width赋负值的意外
    {
   if(changeW) theAlterableTable.style.width = event.x-theAlterableTable.w;
   if(changeH) theAlterableTable.style.height = event.y-theAlterableTable.h;
 }
 catch(e){;}
}
function MouseUpToResize(obj){
 obj.releaseCapture();
 beginResizing=false;

}

</script>
-------------------------------------------------------------------------------------------
2.http://www.walterzorn.com/dragdrop/dragdrop_e.htm
                 下载文件包
wz_dragdrop.js
/* This notice must be untouched at all times.

wz_dragdrop.js v. 4.7
The latest version is available at
http://www.walterzorn.com
or http://www.devira.com
or http://www.walterzorn.de

Copyright (c) 2002-2003 Walter Zorn. All rights reserved.
Created 26. 8. 2002 by Walter Zorn (Web: http://www.walterzorn.com )
Last modified: 3. 6. 2005

This DHTML & Drag&Drop Library adds Drag&Drop functionality
to the following types of html-elements:
- images, even if not positioned via layers,
  nor via stylesheets or any other kind of "hard-coding"
- relatively and absolutely positioned layers (DIV elements).
Moreover, it provides extended DHTML abilities.

LICENSE: LGPL

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License (LGPL) as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

For more details on the GNU Lesser General Public License,
see http://www.gnu.org/copyleft/lesser.html
*/


// PATH TO THE TRANSPARENT 1*1 PX IMAGE (required by NS 4 as spacer)
var spacer = 'transparentpixel.gif';

 


//window.onerror = new Function('return true;');


// Optional commands passed to SET_DHTML() on the html-page (g: may be applied globally, i: individually)
var CLONE   = 'C10nE';   // i  img   clone image
var COPY    = 'C0pY'; // i  img   create copies
var DETACH_CHILDREN  = 'd37aCH';  // i  lyr   detach images
var HORIZONTAL    = 'H0r1Z';   // i  img,lyr  horizontally draggable only
var MAXHEIGHT  = 'm7x8I';   // i  img,lyr  maximum height limit, "
var MAXOFFBOTTOM  = 'm7xd0wN'; // i  img,lyr  downward offset limit
var MAXOFFLEFT    = 'm7x23Ft'; // i  img,lyr  leftward offset limit
var MAXOFFRIGHT   = 'm7x0Ff8'; // i  img,lyr  rightward offset limit
var MAXOFFTOP  = 'm7xu9';   // i  img,lyr  upward offset limit
var MAXWIDTH   = 'm7xW1';   // i  img,lyr  maximum width limit, use with resizable or scalable
var MINWIDTH   = 'm1nw1';   // i  img,lyr  minimum width limit, "
var MINHEIGHT  = 'm1n8I';   // i  img,lyr  minimum height limit, "
var NO_ALT     = 'no81T';   // gi img   disable alt and title attributes
var NO_DRAG    = 'N0d4Ag';  // i  img,lyr  disable draggability
var RESET_Z    = 'r35E7z';  // gi img,lyr  reset z-index when dropped
var RESIZABLE  = 'r5IZbl';  // gi img,lyr  resizable if <ctrl> or <shift> pressed
var SCALABLE   = 'SCLbl';   // gi img,lyr  scalable     "
var SCROLL     = 'sC8lL';   // gi img,lyr  enable auto scroll functionality
var TRANSPARENT   = 'dIApHAn'; // gi img,lyr  translucent while dragged
var VERTICAL   = 'V3Rt1C';  // i  img,lyr  vertically draggable only
var dd_cursors = new Array(
 'c:default',
 'c:crosshair',
 'c:e-resize',
 'c:hand',
 'c:help',
 'c:move',
 'c:n-resize',
 'c:ne-resize',
 'c:nw-resize',
 'c:s-resize',
 'c:se-resize',
 'c:sw-resize',
 'c:text',
 'c:w-resize',
 'c:wait'
);
var dd_i = dd_cursors.length; while(dd_i--)
 eval('var CURSOR_' + (dd_cursors[dd_i].substring(2).toUpperCase().replace('-', '_')) + ' = "' + dd_cursors[dd_i] + '";');
var dd_u = "undefined";
function WZDD()
{
 this.elements = new Array(0);
 this.obj = null;
 this.n = navigator.userAgent.toLowerCase();
 this.db = (document.compatMode && document.compatMode.toLowerCase() != "backcompat")?
  document.documentElement
  : (document.body || null);
 this.op = !!(window.opera && document.getElementById);
 if (this.op) document.onmousedown = new Function('e',
  'if (((e = e || window.event).target || e.srcElement).tagName == "IMAGE") return false;');
 this.ie = !!(this.n.indexOf("msie") >= 0 && document.all && this.db && !this.op);
 this.iemac = !!(this.ie && this.n.indexOf("mac") >= 0);
 this.ie4 = !!(this.ie && !document.getElementById);
 this.n4 = !!(document.layers && typeof document.classes != dd_u);
 this.n6 = !!(typeof window.getComputedStyle != dd_u && typeof document.createRange != dd_u);
 this.w3c = !!(!this.op && !this.ie && !this.n6 && document.getElementById);
 this.ce = !!(document.captureEvents && document.releaseEvents);
 this.px = this.n4? '' : 'px';
 this.tiv = this.w3c? 40 : 10;
}
var dd = new WZDD();

dd.Int = function(d_x, d_y)
{
 return isNaN(d_y = parseInt(d_x))? 0 : d_y;
};
dd.getWndW = function()
{
 return dd.Int(
  (dd.db && !dd.op && !dd.w3c && dd.db.clientWidth)? dd.db.clientWidth
  : (window.innerWidth || 0)
 );
};
dd.getWndH = function()
{
 return dd.Int(
  (dd.db && !dd.op && !dd.w3c && dd.db.clientHeight)? dd.db.clientHeight
  : (window.innerHeight || 0)
 );
};
dd.getScrollX = function()
{
 return dd.Int(window.pageXOffset || (dd.db? dd.db.scrollLeft : 0));
};
dd.getScrollY = function()
{
 return dd.Int(window.pageYOffset || (dd.db? dd.db.scrollTop : 0));
};
dd.getPageXY = function(d_o)
{
 if (dd.n4 && d_o)
 {
  dd.x = d_o.pageX || 0;
  dd.y = d_o.pageY || 0;
 }
 else
 {
  dd.x = dd.y = 0; //global helper vars
  while(d_o)
  {
   dd.x += dd.Int(d_o.offsetLeft);
   dd.y += dd.Int(d_o.offsetTop);
   d_o = d_o.offsetParent || null;
  }
 }
};
dd.getCssXY = function(d_o)
{
 if (d_o.div)
 {
  if (dd.n4)
  {
   d_o.cssx = d_o.div.x;
   d_o.cssy = d_o.div.y;
  }
  else if (dd.ie4)
  {
   d_o.cssx = d_o.css.pixelLeft;
   d_o.cssy = d_o.css.pixelTop;
  }
  else
  {
   d_o.css.left = d_o.css.top = 0 + dd.px;
   dd.getPageXY(d_o.div);
   d_o.cssx = d_o.x - dd.x;
   d_o.cssy = d_o.y - dd.y;
   d_o.css.left = d_o.cssx + dd.px;
   d_o.css.top = d_o.cssy + dd.px;
  }
 }
 else
 {
  d_o.cssx = 0;
  d_o.cssy = 0;
 }
};
dd.getImgW = function(d_o)
{
 return d_o? dd.Int(d_o.width) : 0;
};
dd.getImgH = function(d_o)
{
 return d_o? dd.Int(d_o.height) : 0;
};
dd.getDivW = function(d_o)
{
 return dd.Int(
  dd.n4? (d_o.div? d_o.div.clip.width : 0)
  : d_o.div? (d_o.div.offsetWidth || d_o.css.pixelWidth || d_o.css.width || 0)
  : 0
 );
};
dd.getDivH = function(d_o)
{
 return dd.Int(
  dd.n4? (d_o.div? d_o.div.clip.height : 0)
  : d_o.div? (d_o.div.offsetHeight || d_o.css.pixelHeight || d_o.css.height || 0)
  : 0
 );
};
dd.getWH = function(d_o)
{
 d_o.w = dd.getDivW(d_o);
 d_o.h = dd.getDivH(d_o);
 if (d_o.css)
 {
  d_o.css.width = d_o.w + dd.px;
  d_o.css.height = d_o.h + dd.px;
  d_o.dw = dd.getDivW(d_o)-d_o.w;
  d_o.dh = dd.getDivH(d_o)-d_o.h;
  d_o.css.width = (d_o.w-d_o.dw) + dd.px;
  d_o.css.height = (d_o.h-d_o.dh) + dd.px;
 }
 else d_o.dw = d_o.dh = 0;
};
dd.getCssProp = function(d_o, d_pn6, d_pstyle, d_pn4)
{
 if (d_o && dd.n6) return ''+window.getComputedStyle(d_o, null).getPropertyValue(d_pn6);
 if (d_o && d_o.currentStyle) return ''+eval('d_o.currentStyle.'+d_pstyle);
 if (d_o && d_o.style) return ''+eval('d_o.style.'+d_pstyle);
 if (d_o && dd.n4) return ''+eval('d_o.'+d_pn4);
 return '';
};
dd.getDiv = function(d_x, d_d)
{
 d_d = d_d || document;
 if (dd.n4)
 {
  if (d_d.layers[d_x]) return d_d.layers[d_x];
  for(var d_i = d_d.layers.length; d_i--;)
  {
   var d_y = dd.getDiv(d_x, d_d.layers[d_i].document);
   if (d_y) return d_y;
  }
 }
 if (dd.ie) return d_d.all[d_x] || null;
 if (d_d.getElementById) return d_d.getElementById(d_x) || null;
 return null;
};
dd.getImg = function(d_o, d_nm, d_xy, d_w)
{
 d_w = d_w || window;
 var d_img;
 if (document.images && (d_img = d_w.document.images[d_nm]))
 {
  if (d_xy)
  {
   if (dd.n4)
   {
    dd.getPageXY(d_w);
    d_o.defx = d_img.x + dd.x;
    d_o.defy = d_img.y + dd.y;
   }
   else
   {
    dd.getPageXY(d_img);
    d_o.defx = dd.x;
    d_o.defy = dd.y;
   }
  }
  return d_img;
 }
 if (dd.n4) for(var d_i = d_w.document.layers.length; d_i--;)
 {
  var d_y = dd.getImg(d_o, d_nm, d_xy, d_w.document.layers[d_i]);
  if (d_y) return d_y;
 }
 return null;
};
dd.getParent = function(d_o, d_p)
{
 if (dd.n4)
 {
  for(d_p, d_i = dd.elements.length; d_i--;)
  {
   if (!((d_p = dd.elements[d_i]).is_image) && d_p.div && (d_p.div.document.layers[d_o.name] || d_o.oimg && d_p.div.document.images[d_o.oimg.name]))
    d_p.addChild(d_o, d_p.detach, 1);
  }
 }
 else
 {
  d_p = d_o.is_image? dd.getImg(d_o, d_o.oimg.name) : (d_o.div || null);
  while(d_p && !!(d_p = d_p.offsetParent || d_p.parentNode || null))
  {
   if (d_p.ddObj)
   {
    d_p.ddObj.addChild(d_o, d_p.ddObj.detach, 1);
    break;
   }
  }
 }
};
dd.getCmd = function(d_o, d_cmd, d_cmdStr)
{
 var d_i = d_o.id.indexOf(d_cmd), d_j,
 d_y = (d_i >= 0)*1;
 if (d_y)
 {
  d_j = d_i+d_cmd.length;
  if (d_cmdStr) d_o.cmd += d_o.id.substring(d_i, d_j);
  d_o.id = d_o.id.substring(0, d_i) + d_o.id.substring(d_j);
 }
 return d_y;
};
dd.getCmdVal = function(d_o, d_cmd, d_cmdStr, int0)
{
 var d_i = d_o.id.indexOf(d_cmd), d_j,
 d_y = (d_o.id.indexOf(d_cmd) >= 0)? dd.Int(d_o.id.substring(d_o.id.indexOf(d_cmd)+d_cmd.length)) : int0? -1 : 0;
 if (!int0 && d_y || int0 && d_y >= 0)
 {
  d_j = d_i+d_cmd.length+(""+d_y).length;
  if (d_cmdStr) d_o.cmd += d_o.id.substring(d_i, d_j);
  d_o.id = d_o.id.substring(0, d_i) + d_o.id.substring(d_j);
 }
 return d_y;
};
dd.addElt = function(d_o, d_p)
{
 dd.elements[d_o.name] = dd.elements[d_o.index = dd.elements.length] = d_o;
 if (d_p) d_p.copies[d_o.name] = d_p.copies[d_p.copies.length] = d_o;
};
dd.mkWzDom = function()
{
 var d_o, d_i = dd.elements.length; while(d_i--) dd.getParent(dd.elements[d_i]);
 d_i = dd.elements.length; while(d_i--)
 {
  d_o = dd.elements[d_i];
  if (d_o.children && !d_o.parent)
  {
   var d_j = d_o.children.length; while(d_j--)
    d_o.children[d_j].setZ(d_o.z+d_o.children[d_j].z, 1);
  }
 }
};
dd.addProps = function(d_o)
{
 var d_i, d_c;
 if (d_o.is_image)
 {
  d_o.div = dd.getDiv(d_o.id);
  d_o.css = (d_o.div && typeof d_o.div.style != dd_u)? d_o.div.style : null;
  d_o.nimg = (dd.n4 && d_o.div)? d_o.div.document.images[0] : (document.images[d_o.id+'NImG'] || null);
  if (!d_o.noalt && !dd.noalt && d_o.nimg && d_o.oimg)
  {
   d_o.nimg.alt = d_o.oimg.alt || '';
   if (d_o.oimg.title) d_o.nimg.title = d_o.oimg.title;
  }
  d_o.bgColor = '';
 }
 else
 {
  d_o.bgColor = dd.getCssProp(d_o.div, 'background-color','backgroundColor','bgColor').toLowerCase();
  if (dd.n6 && d_o.div)
  {
   if ((d_c = d_o.bgColor).indexOf('rgb') >= 0)
   {
    d_c = d_c.substring(4, d_c.length-1).split(',');
    d_o.bgColor = '#';
    for(d_i = 0; d_i < d_c.length; d_i++) d_o.bgColor += parseInt(d_c[d_i]).toString(0x10);
   }
   else d_o.bgColor = d_c;
  }
 }
 if (dd.scalable) d_o.scalable = d_o.resizable^1;
 else if (dd.resizable) d_o.resizable = d_o.scalable^1;
 d_o.setZ(d_o.defz);
 d_o.cursor = d_o.cursor || dd.cursor || 'auto';
 d_o._setCrs(d_o.nodrag? 'auto' : d_o.cursor);
 d_o.diaphan = d_o.diaphan || dd.diaphan || 0;
 d_o.opacity = 1.0;
 if (dd.ie && !dd.iemac && d_o.div && d_o.div.style)
  d_o.div.style.filter = "Alpha(opacity=100)";
 d_o.visible = true;
};
dd.initz = function()
{
 if (!(dd && (dd.n4 || dd.n6 || dd.ie || dd.op || dd.w3c))) return;
 else if (dd.n6 || dd.ie || dd.op || dd.w3c) dd.recalc(1);
 var d_drag = (document.onmousemove == DRAG),
 d_resize = (document.onmousemove == RESIZE);
 if (dd.loadFunc) dd.loadFunc();
 if (d_drag) dd.setMovHdl(DRAG);
 else if (d_resize) dd.setMovHdl(RESIZE);
 if (d_drag || d_resize) dd.setUpHdl(DROP);
 dd.setDwnHdl(PICK);
};
dd.finlz = function()
{
 if (dd.ie && dd.elements)
 {
  var d_i = dd.elements.length; while(d_i--)
   dd.elements[d_i].del();
 }
 if(dd.uloadFunc) dd.uloadFunc();
};
dd.setCe = function(d_e, d_fnc)
{
 d_fnc? document.captureEvents(d_e) : document.releaseEvents(d_e);
};
dd.setDwnHdl = function(d_x)
{
 if (document.onmousedown != d_x)
 {
  dd.downFunc = document.onmousedown;
  document.onmousedown = d_x;
  if (dd.ce) dd.setCe(Event.MOUSEDOWN, d_x);
 }
};
dd.setMovHdl = function(d_x)
{
 if (document.onmousemove != d_x)
 {
  dd.moveFunc = document.onmousemove;
  document.onmousemove = d_x;
  if (dd.ce) dd.setCe(Event.MOUSEMOVE, d_x);
 }
};
dd.setUpHdl = function(d_x)
{
 if (document.onmouseup != d_x)
 {
  dd.upFunc = document.onmouseup;
  document.onmouseup = d_x;
  if (dd.ce) dd.setCe(Event.MOUSEUP, d_x);
 }
};
dd.evt = function(d_e)
{
 this.but = (this.e = d_e || window.event).which || this.e.button || 0;
 this.button = (this.e.type == 'mousedown')? this.but
  : (dd.e && dd.e.button)? dd.e.button
  : 0;
 this.src = this.e.target || this.e.srcElement || null;
 this.src.tag = ("" + (this.src.tagName || this.src)).toLowerCase();
 this.x = dd.Int(this.e.pageX || this.e.clientX || 0);
 this.y = dd.Int(this.e.pageY || this.e.clientY || 0);
 if (dd.ie)
 {
  this.x += dd.getScrollX() - (dd.ie && !dd.iemac)*1;
  this.y += dd.getScrollY() - (dd.ie && !dd.iemac)*1;
 }
 this.modifKey = this.e.modifiers? this.e.modifiers&Event.SHIFT_MASK : (this.e.shiftKey || false);
};
dd.recalc = function(d_x)
{
 var d_o, d_i = dd.elements.length; while(d_i--)
 {
  if (!(d_o = dd.elements[d_i]).is_image && d_o.div)
  {
   dd.getWH(d_o);
   if (d_o.div.pos_rel)
   {
    dd.getPageXY(d_o.div);
    var d_dx = dd.x - d_o.x, d_dy = dd.y - d_o.y;
    d_o.defx += d_dx;
    d_o.x += d_dx;
    d_o.defy += d_dy;
    d_o.y += d_dy;
    var d_p, d_j = d_o.children.length; while(d_j--)
    {
     if (!(d_p = d_o.children[d_j]).detached && (d_o != d_p.defparent || !(d_p.is_image && dd.getImg(d_p, d_p.oimg.name, 1))))
     {
      d_p.defx += d_dx;
      d_p.defy += d_dy;
      d_p.moveBy(d_dx, d_dy);
     }
    }
   }
  }
  else if (d_o.is_image && !dd.n4)
  {
   if (dd.n6 && d_x && !d_o.defw) d_o.resizeTo(d_o.defw = dd.getImgW(d_o.oimg), d_o.defh = dd.getImgH(d_o.oimg));
   var d_defx = d_o.defx, d_defy = d_o.defy;
   if (!(d_o.parent && d_o.parent != d_o.defparent) && (d_x || !d_o.detached || d_o.horizontal || d_o.vertical) && dd.getImg(d_o, d_o.oimg.name, 1))
    d_o.moveBy(d_o.defx-d_defx, d_o.defy-d_defy);
  }
 }
};
function WINSZ(d_x)
{
 if (d_x)
 {
  if (dd.n4)
  {
   dd.iW = innerWidth;
   dd.iH = innerHeight;
  }
  window.onresize = new Function('WINSZ();');
 }
 else if (dd.n4 && (innerWidth != dd.iW || innerHeight != dd.iH)) location.reload();
 else if (!dd.n4) setTimeout('dd.recalc()', 0xa);
}
WINSZ(1);

function DDObj(d_o, d_i)
{
 this.id = d_o;
 this.cmd = '';
 this.cpy_n = dd.getCmdVal(this, COPY);
 this.maxoffb = dd.getCmdVal(this, MAXOFFBOTTOM, 0, 1);
 this.maxoffl = dd.getCmdVal(this, MAXOFFLEFT, 0, 1);
 this.maxoffr = dd.getCmdVal(this, MAXOFFRIGHT, 0, 1);
 this.maxofft = dd.getCmdVal(this, MAXOFFTOP, 0, 1);
 var d_j = dd_cursors.length; while(d_j--)
  if (dd.getCmd(this, dd_cursors[d_j], 1)) this.cursor = dd_cursors[d_j].substring(2);
 this.clone = dd.getCmd(this, CLONE, 1);
 this.detach = dd.getCmd(this, DETACH_CHILDREN);
 this.scalable = dd.getCmd(this, SCALABLE, 1);
 this.horizontal = dd.getCmd(this, HORIZONTAL);
 this.noalt = dd.getCmd(this, NO_ALT, 1);
 this.nodrag = dd.getCmd(this, NO_DRAG);
 this.scroll = dd.getCmd(this, SCROLL, 1);
 this.resizable = dd.getCmd(this, RESIZABLE, 1);
 this.re_z = dd.getCmd(this, RESET_Z, 1);
 this.diaphan = dd.getCmd(this, TRANSPARENT, 1);
 this.vertical = dd.getCmd(this, VERTICAL);
 this.maxw = dd.getCmdVal(this, MAXWIDTH, 1, 1);
 this.minw = Math.abs(dd.getCmdVal(this, MINWIDTH, 1, 1));
 this.maxh = dd.getCmdVal(this, MAXHEIGHT, 1, 1);
 this.minh = Math.abs(dd.getCmdVal(this, MINHEIGHT, 1, 1));
 this.pickFunc = this.dragFunc = this.resizeFunc = this.dropFunc = null;

 this.name = this.id + (d_i || '');
 this.oimg = dd.getImg(this, this.id, 1);
 this.is_image = !!this.oimg;
 this.copies = new Array();
 this.children = new Array();
 this.parent = this.original = null;
 if (this.oimg)
 {
  this.id = this.name + 'div';
  this.w = dd.getImgW(this.oimg);
  this.h = dd.getImgH(this.oimg);
  this.dw = this.dh = 0;
  this.defz = dd.Int(dd.getCssProp(this.oimg, 'z-index','zIndex','zIndex')) || 1;
  this.defsrc = this.src = this.oimg.src;
  this.htm = '<img name="' + this.id + 'NImG"'+
   ' src="' + this.oimg.src + '" '+
   'width="' + this.w + '" height="' + this.h + '">';
  this.t_htm = '<div id="' + this.id +
   '" style="position:absolute;'+
   'left:' + (this.cssx = this.x = this.defx) + 'px;'+
   'top:' + (this.cssy = this.y = this.defy) + 'px;'+
   'width:' + this.w + 'px;'+
   'height:' + this.h + 'px;">'+
   this.htm + '<\/div>';
 }
 else
 {
  if (!!(this.div = dd.getDiv(this.id)) && typeof this.div.style != dd_u) this.css = this.div.style;
  dd.getWH(this);
  if (this.div)
  {
   this.div.ddObj = this;
   this.div.pos_rel = ("" + (this.div.parentNode? this.div.parentNode.tagName : this.div.parentElement? this.div.parentElement.tagName : '').toLowerCase().indexOf('body') < 0);
  }
  dd.getPageXY(this.div);
  this.defx = this.x = dd.x;
  this.defy = this.y = dd.y;
  dd.getCssXY(this);
  this.defz = dd.Int(dd.getCssProp(this.div, 'z-index','zIndex','zIndex'));
 }
 this.defw = this.w || 0;
 this.defh = this.h || 0;
}
DDObj.prototype.setPickFunc = function(d_x)
{
 this.pickFunc = d_x;
};
DDObj.prototype.setDragFunc = function(d_x)
{
 this.dragFunc = d_x;
};
DDObj.prototype.setResizeFunc = function(d_x)
{
 this.resizeFunc = d_x;
};
DDObj.prototype.setDropFunc = function(d_x)
{
 this.dropFunc = d_x;
};
DDObj.prototype.moveBy = function(d_x, d_y, d_kds, d_o)
{
 if (!this.div) return;
 this.x += (d_x = dd.Int(d_x));
 this.y += (d_y = dd.Int(d_y));
 if (!d_kds || this.is_image || this.parent != this.defparent)
 {
  (d_o = this.css || this.div).left = (this.cssx += d_x) + dd.px;
  d_o.top = (this.cssy += d_y) + dd.px;
 }
 var d_i = this.children.length; while(d_i--)
 {
  if (!(d_o = this.children[d_i]).detached) d_o.moveBy(d_x, d_y, 1);
  d_o.defx += d_x;
  d_o.defy += d_y;
 }
};

DDObj.prototype.moveTo = function(d_x, d_y)
{
 this.moveBy(dd.Int(d_x)-this.x, dd.Int(d_y)-this.y);
};
DDObj.prototype.hide = function(d_m, d_o, d_p)
{
 if (this.div && this.visible)
 {
  d_p = this.css || this.div;
  if (d_m && !dd.n4)
  {
   this.display = dd.getCssProp(this.div, "display", "display", "display");
   if (this.oimg)
   {
    this.oimg.display = dd.getCssProp(this.oimg, "display", "display", "display");
    this.oimg.style.display = "none";
   }
   d_p.display = "none";
   dd.recalc();
  }
  else d_p.visibility = "hidden";
 }
 this.visible = false;
 var d_i = this.children.length; while(d_i--)
  if (!(d_o = this.children[d_i]).detached) d_o.hide(d_m);
};
DDObj.prototype.show = function(d_o, d_p)
{
 if (this.div)
 {
  d_p = this.css || this.div;
  if (d_p.display && d_p.display == "none")
  {
   d_p.display = this.display || "block";
   if (this.oimg) this.oimg.style.display = this.oimg.display || "inline";
   dd.recalc();
  }
  else d_p.visibility = "visible";
 }
 this.visible = true;
 var d_i = this.children.length; while(d_i--)
  if (!(d_o = this.children[d_i]).detached) d_o.show();
};
DDObj.prototype.resizeTo = function(d_w, d_h, d_o)
{
 if (!this.div) return;
 d_w = (this.w = dd.Int(d_w))-this.dw;
 d_h = (this.h = dd.Int(d_h))-this.dh;
 if (dd.n4)
 {
  this.div.resizeTo(d_w, d_h);
  if (this.is_image)
  {
   this.write('<img src="' + this.src + '" width="' + d_w + '" height="' + d_h + '">');
   (this.nimg = this.div.document.images[0]).src = this.src;
  }
 }
 else if (typeof this.css.pixelWidth != dd_u)
 {
  this.css.pixelWidth = d_w;
  this.css.pixelHeight = d_h;
  if (this.is_image)
  {
   (d_o = this.nimg.style).pixelWidth = d_w;
   d_o.pixelHeight = d_h;
  }
 }
 else
 {
  this.css.width = d_w + dd.px;
  this.css.height = d_h + dd.px;
  if (this.is_image)
  {
   (d_o = this.nimg).width = d_w;
   d_o.height = d_h;
   if (!d_o.complete) d_o.src = this.src;
  }
 }
};
DDObj.prototype.resizeBy = function(d_dw, d_dh)
{
 this.resizeTo(this.w+dd.Int(d_dw), this.h+dd.Int(d_dh));
};
DDObj.prototype.swapImage = function(d_x, d_cp)
{
 if (!this.nimg) return;
 this.nimg.src = d_x;
 this.src = this.nimg.src;
 if (d_cp)
 {
  var d_i = this.copies.length; while(d_i--)
   this.copies[d_i].src = this.copies[d_i].nimg.src = this.nimg.src;
 }
};
DDObj.prototype.setBgColor = function(d_x)
{
 if (dd.n4 && this.div) this.div.bgColor = d_x;
 else if (this.css) this.css.background = d_x;
 this.bgColor = d_x;
};
DDObj.prototype.write = function(d_x, d_o)
{
 this.text = d_x;
 if (!this.div) return;
 if (dd.n4)
 {
  (d_o = this.div.document).open();
  d_o.write(d_x);
  d_o.close();
  dd.getWH(this);
 }
 else
 {
  this.css.height = 'auto';
  this.div.innerHTML = d_x;
  if (!dd.ie4) dd.recalc();
  if (dd.ie4 || dd.n6) setTimeout('dd.recalc();', 0); // n6.0: recalc twice
 }
};
DDObj.prototype.copy = function(d_n, d_p)
{
 if (!this.oimg) return;
 d_n = d_n || 1;
 while(d_n--)
 {
  var d_l = this.copies.length,
  d_o = new DDObj(this.name+this.cmd, d_l+1);
  if (dd.n4)
  {
   d_o.id = (d_p = new Layer(d_o.w)).name;
   d_p.clip.height = d_o.h;
   d_p.visibility = 'show';
   (d_p = d_p.document).open();
   d_p.write(d_o.htm);
   d_p.close();
  }
  else if (dd.db.insertAdjacentHTML) dd.db.insertAdjacentHTML("AfterBegin", d_o.t_htm);
  else if (document.createElement && dd.db && dd.db.appendChild)
  {
   dd.db.appendChild(d_p = document.createElement('div'));
   d_p.innerHTML = d_o.htm;
   d_p.id = d_o.id;
   d_p.style.position = 'absolute';
   d_p.style.width = d_o.w + 'px';
   d_p.style.height = d_o.h + 'px';
  }
  else if (dd.db && dd.db.innerHTML) dd.db.innerHTML += d_o.t_htm;
  d_o.defz = this.defz+1+d_l;
  dd.addProps(d_o);
  d_o.original = this;
  dd.addElt(d_o, this);
  if (this.parent)
  {
   this.parent.addChild(d_o, this.detached);
   d_o.defparent = this.defparent;
  }
  d_o.moveTo(d_o.defx = this.defx, d_o.defy = this.defy);
  if (dd.n4) d_o.defsrc = d_o.src = this.defsrc;
  d_o.swapImage(this.src);
 }
};
DDObj.prototype.addChild = function(d_kd, detach, defp)
{
 if (typeof d_kd != "object") d_kd = dd.elements[d_kd];
 if (d_kd.parent && d_kd.parent == this || d_kd == this || !d_kd.is_image && d_kd.defparent && !defp) return;

 this.children[this.children.length] = this.children[d_kd.name] = d_kd;
 d_kd.detached = detach || 0;
 if (defp) d_kd.defparent = this;
 else if (this == d_kd.defparent && d_kd.is_image) dd.getImg(this, d_kd.oimg.name, 1);
 if (!d_kd.defparent || this != d_kd.defparent)
 {
  d_kd.defx = d_kd.x;
  d_kd.defy = d_kd.y;
 }
 if (!detach)
 {
  d_kd.defz = d_kd.defz+this.defz-(d_kd.parent? d_kd.parent.defz : 0)+(!d_kd.is_image*1);
  d_kd.setZ(d_kd.z+this.z-(d_kd.parent? d_kd.parent.z : 0)+(!d_kd.is_image*1), 1);
 }
 if (d_kd.parent) d_kd.parent._removeChild(d_kd, 1);
 d_kd.parent = this;
};
DDObj.prototype._removeChild = function(d_kd, d_newp)
{
 if (typeof d_kd != "object") d_kd = this.children[d_kd];
 var d_oc = this.children, d_nc = new Array();
 for(var d_i = 0; d_i < d_oc.length; d_i++)
  if (d_oc[d_i] != d_kd) d_nc[d_nc.length] = d_oc[d_i];
 this.children = d_nc;
 d_kd.parent = null;
 if (!d_newp)
 {
  d_kd.detached = d_kd.defp = 0;
  if (d_kd.is_image) dd.getImg(d_kd, d_kd.oimg.name, 1);
 }
};
DDObj.prototype.attachChild = function(d_kd)
{
 (d_kd = (typeof d_kd != "object")? this.children[d_kd]: d_kd).detached = 0;
 d_kd.setZ(d_kd.defz + this.z-this.defz, 1);
};
DDObj.prototype.detachChild = function(d_kd)
{
 (d_kd = (typeof d_kd != "object")? this.children[d_kd]: d_kd).detached = 1;
};
DDObj.prototype.setZ = function(d_x, d_kds, d_o)
{
 if (d_kds)
 {
  var d_dz = d_x-this.z,
  d_i = this.children.length; while(d_i--)
   if (!(d_o = this.children[d_i]).detached) d_o.setZ(d_o.z+d_dz, 1);
 }
 dd.z = Math.max(dd.z, this.z = this.div? ((this.css || this.div).zIndex = d_x) : 0);
};
DDObj.prototype.maximizeZ = function()
{
 this.setZ(dd.z+1, 1);
};
DDObj.prototype._resetZ = function(d_o)
{
 if (this.re_z || dd.re_z)
 {
  this.setZ(this.defz);
  var d_i = this.children.length; while(d_i--)
   if (!(d_o = this.children[d_i]).detached) d_o.setZ(d_o.defz);
 }
};
DDObj.prototype.setOpacity = function(d_x)
{
 this.opacity = d_x;
 this._setOpaRel(1.0, 1);
};
DDObj.prototype._setOpaRel = function(d_x, d_kd, d_y, d_o)
{
 if (this.diaphan || d_kd)
 {
  d_y = this.opacity*d_x;
  if (dd.n6) this.css.MozOpacity = d_y;
  else if (dd.ie && !dd.iemac)
  {
   if (this.css)
    this.css.filter = "Alpha(opacity="+parseInt(100*d_y)+")";
  }
  else if (this.css) this.css.opacity = d_y;
  var d_i = this.children.length; while(d_i--)
   if (!(d_o = this.children[d_i]).detached) d_o._setOpaRel(d_x, 1);
 }
};
DDObj.prototype.setCursor = function(d_x)
{
 this._setCrs(this.cursor = (d_x.indexOf('c:')+1)? d_x.substring(2) : d_x);
};
DDObj.prototype._setCrs = function(d_x)
{
 if (this.css) this.css.cursor = ((!dd.ie || dd.iemac) && d_x == 'hand')? 'pointer' : d_x;
};
DDObj.prototype.setDraggable = function(d_x)
{
 this.nodrag = !d_x*1;
 this._setCrs(d_x? this.cursor : 'auto');
};
DDObj.prototype.setResizable = function(d_x)
{
 this.resizable = d_x*1;
 if (d_x) this.scalable = 0;
};
DDObj.prototype.setScalable = function(d_x)
{
 this.scalable = d_x*1;
 if (d_x) this.resizable = 0;
};
DDObj.prototype.del = function(d_os, d_o)
{
 var d_i;
 if (this.parent && this.parent._removeChild) this.parent._removeChild(this);
 if (this.original)
 {
  this.hide();
  if (this.original.copies)
  {
   d_os = new Array();
   for(d_i = 0; d_i < this.original.copies.length; d_i++)
    if ((d_o = this.original.copies[d_i]) != this) d_os[d_o.name] = d_os[d_os.length] = d_o;
   this.original.copies = d_os;
  }
 }
 else if (this.is_image)
 {
  this.hide();
  if (this.oimg)
  {
    if (dd.n4) this.oimg.src = this.defsrc;
    else this.oimg.style.visibility = 'visible';
  }
 }
 else if (this.moveTo)
 {
  if (this.css) this.css.cursor = 'default';
  this.moveTo(this.defx, this.defy);
  this.resizeTo(this.defw, this.defh);
 }
 d_os = new Array();
 for(d_i = 0; d_i < dd.elements.length; d_i++)
 {
  if ((d_o = dd.elements[d_i]) != this) d_os[d_o.name] = d_os[d_o.index = d_os.length] = d_o;
  else d_o._free();
 }
 dd.elements = d_os;
 if (!dd.n4) dd.recalc();
};
DDObj.prototype._free = function()
{
 for(var d_i in this)
  this[d_i] = null;
 dd.elements[this.name] = null;
};
dd.n4RectVis = function(vis)
{
 for(var d_i = 4; d_i--;)
 {
  dd.rectI[d_i].visibility = dd.rectA[d_i].visibility = vis? 'show' : 'hide';
  if (vis) dd.rectI[d_i].zIndex = dd.rectA[d_i].zIndex = dd.z+2;
 }
};
dd.n4RectPos = function(d_o, d_x, d_y, d_w, d_h)
{
 d_o.x = d_x;
 d_o.y = d_y;
 d_o.clip.width = d_w;
 d_o.clip.height = d_h;
};
// NN4: draw img resize rectangle
dd.n4Rect = function(d_w, d_h)
{
 var d_i;
 if (!dd.rectI)
 {
  dd.rectI = new Array();
  dd.rectA = new Array();
 }
 if (!dd.rectI[0])
 {
  for(d_i = 4; d_i--;)
  {
   (dd.rectI[d_i] = new Layer(1)).bgColor = '#000000';
   (dd.rectA[d_i] = new Layer(1)).bgColor = '#ffffff';
  }
 }
 if (!dd.rectI[0].visibility || dd.rectI[0].visibility == 'hide') dd.n4RectVis(1);
 dd.obj.w = d_w;
 dd.obj.h = d_h;
 for(d_i = 4; d_i--;)
 {
  dd.n4RectPos(dd.rectI[d_i], dd.obj.x + (!(d_i-1)? (dd.obj.w-1) : 0), dd.obj.y + (!(d_i-2)? (dd.obj.h-1) : 0), d_i&1 || dd.obj.w, !(d_i&1) || dd.obj.h);
  dd.n4RectPos(dd.rectA[d_i], !(d_i-1)? dd.rectI[1].x+1 : (dd.obj.x-1), !(d_i-2)? dd.rectI[2].y+1 : (dd.obj.y-1), d_i&1 || dd.obj.w+2, !(d_i&1) || dd.obj.h+2);
 }
};
dd.reszTo = function(d_w, d_h)
{
 if (dd.n4 && dd.obj.is_image) dd.n4Rect(d_w, d_h);
 else dd.obj.resizeTo(d_w, d_h);
};
dd.embedVis = function(d_vis)
{
 var d_o = new Array('iframe', 'applet', 'embed', 'object');
 var d_i = d_o.length; while(d_i--)
 {
  var d_p = dd.ie? document.all.tags(d_o[d_i]) : document.getElementsByTagName? document.getElementsByTagName(d_o[d_i]) : null;
  if (d_p)
  {
   var d_j = d_p.length; while(d_j--)
   {
    var d_q = d_p[d_j];
    while(d_q.offsetParent || d_q.parentNode)
    {
     if ((d_q = d_q.parentNode || d_q.offsetParent || null) == dd.obj.div)
     {
      d_p[d_j].style.visibility = d_vis;
      break;
     }
    }
   }
  }
 }
};

dd.maxOffX = function(d_x, d_y)
{
 return (
  (dd.obj.maxoffl+1 && (d_y = dd.obj.defx-dd.obj.maxoffl)-d_x > 0
  || dd.obj.maxoffr+1 && (d_y = dd.obj.defx+dd.obj.maxoffr)-d_x < 0)? d_y
  : d_x
 );
};
dd.maxOffY = function(d_x, d_y)
{
 return (
  (dd.obj.maxofft+1 && (d_y = dd.obj.defy-dd.obj.maxofft)-d_x > 0
  || dd.obj.maxoffb+1 && (d_y = dd.obj.defy+dd.obj.maxoffb)-d_x < 0)? d_y
  : d_x
 );
};
dd.inWndW = function(d_x, d_y)
{
 var d_wx = dd.getScrollX(),
 d_ww = dd.getWndW();
 return (
  ((d_y = d_wx+2)-d_x > 0) || ((d_y = d_wx+d_ww+dd.obj.w-2)-d_x < 0)? d_y
  : d_x
 );
};
dd.inWndH = function(d_x, d_y)
{
 var d_wy = dd.getScrollY(),
 d_wh = dd.getWndH();
 return (
  ((d_y = d_wy+2)-d_x > 0) || ((d_y = d_wy+d_wh+dd.obj.h-2)-d_x < 0)? d_y
  : d_x
 );
};
// These two funcs limit the size of element when mouseresized.
// Implemented 22.5.2003 by Gregor L黷olf <gregor@milou.ch>, modified by Walter Zorn
dd.limW = function(d_w)
{
 return (
  (dd.obj.minw-d_w > 0)? dd.obj.minw
  : (dd.obj.maxw > 0 && dd.obj.maxw-d_w < 0)? dd.obj.maxw
  : d_w
 );
};
dd.limH = function(d_h)
{
 return (
  (dd.obj.minh-d_h > 0)? dd.obj.minh
  : (dd.obj.maxh > 0 && dd.obj.maxh-d_h < 0)? dd.obj.maxh
  : d_h
 );
};
// Optional autoscroll-page functionality. Courtesy Cedric Savarese.
// Implemented by Walter Zorn
function DDScroll()
{
 if (!dd.obj || !dd.obj.scroll && !dd.scroll || dd.op || dd.ie4 || dd.whratio)
 {
  dd.scrx = dd.scry = 0;
  return;
 }
 var d_bnd = 0x1c,
 d_wx = dd.getScrollX(), d_wy = dd.getScrollY();
 if (dd.msmoved)
 {
  var d_ww = dd.getWndW(), d_wh = dd.getWndH(), d_y;
  dd.scrx = ((d_y = dd.e.x-d_ww-d_wx+d_bnd) > 0)? (d_y>>=2)*d_y
   : ((d_y = d_wx+d_bnd-dd.e.x) > 0)? -(d_y>>=2)*d_y
   : 0;
  dd.scry = ((d_y = dd.e.y-d_wh-d_wy+d_bnd) > 0)? (d_y>>=2)*d_y
   : ((d_y = d_wy+d_bnd-dd.e.y) > 0)? -(d_y>>=2)*d_y
   : 0;
 }
 if (dd.scrx || dd.scry)
 {
  window.scrollTo(
   d_wx + (dd.scrx = dd.obj.is_resized? dd.limW(dd.obj.w+dd.scrx)-dd.obj.w : dd.obj.vertical? 0 : (dd.maxOffX(dd.obj.x+dd.scrx)-dd.obj.x)),
   d_wy + (dd.scry = dd.obj.is_resized? dd.limH(dd.obj.h+dd.scry)-dd.obj.h : dd.obj.horizontal? 0 : (dd.maxOffY(dd.obj.y+dd.scry)-dd.obj.y))
  );
  dd.obj.is_dragged? dd.obj.moveTo(dd.obj.x+dd.getScrollX()-d_wx, dd.obj.y+dd.getScrollY()-d_wy)
   : dd.reszTo(dd.obj.w+dd.getScrollX()-d_wx, dd.obj.h+dd.getScrollY()-d_wy);
 }
 dd.msmoved = 0;
 window.setTimeout('DDScroll()', 0x33);
}
function PICK(d_ev)
{
 dd.e = new dd.evt(d_ev);
 if (dd.e.x >= dd.getWndW()+dd.getScrollX() || dd.e.y >= dd.getWndH()+dd.getScrollY()) return true; // on scrollbar
 var d_o, d_cmp = -1, d_i = dd.elements.length; while(d_i--)
 {
  d_o = dd.elements[d_i];
  if (dd.n4 && dd.e.but > 1 && dd.e.src == d_o.oimg && !d_o.clone) return false;
  if (d_o.visible && dd.e.but <= 1 && dd.e.x >= d_o.x && dd.e.x <= d_o.x+d_o.w && dd.e.y >= d_o.y && dd.e.y <= d_o.y+d_o.h)
  {
   if (d_o.z > d_cmp && dd.e.src.tag.indexOf('input') < 0 && dd.e.src.tag.indexOf('textarea') < 0 && dd.e.src.tag.indexOf('select') < 0 && dd.e.src.tag.indexOf('option') < 0)
   {
    d_cmp = d_o.z;
    dd.obj = d_o;
   }
  }
 }
 if (dd.obj)
 {
  if (dd.obj.nodrag) dd.obj = null;
  else
  {
   dd.e.e.cancelBubble = true;
   var d_rsz = dd.e.modifKey && (dd.obj.resizable || dd.obj.scalable);
   if (dd.op)
   {
    (d_o = document.getElementById('OpBlUr')).style.pixelLeft = dd.e.x;
    d_o.style.pixelTop = dd.e.y;
    (d_o = d_o.children[0].children[0]).focus();
    d_o.blur();
   }
   else if (dd.ie && !dd.ie4)
   {
    if (document.selection && document.selection.empty) document.selection.empty();
    dd.db.onselectstart = function()
    {
     event.returnValue = false;
    };
   }
   if (d_rsz)
   {
    dd.obj._setCrs('se-resize');
    dd.obj.is_resized = 1;
    dd.whratio = dd.obj.scalable? dd.obj.defw/dd.obj.defh : 0;
    if (dd.ie)
    {
     if (dd.ie4)
     {
      window.dd_x = dd.getScrollX();
      window.dd_y = dd.getScrollY();
     }
     setTimeout(
      'if (dd.obj && document.selection && document.selection.empty)'+
      '{'+
       'document.selection.empty();'+
       'if (dd.ie4) window.scrollTo(window.dd_x, window.dd_y);'+
      '}'
     ,0);
    }
    dd.setMovHdl(RESIZE);
    dd.reszTo(dd.obj.w, dd.obj.h);
   }
   else
   {
    dd.obj.is_dragged = 1;
    dd.setMovHdl(DRAG);
   }
   dd.setUpHdl(DROP);
   dd.embedVis('hidden');
   dd.obj._setOpaRel(0.7);
   dd.obj.maximizeZ();
   dd.ofx = dd.obj.x+dd.obj.w-dd.e.x;
   dd.ofy = dd.obj.y+dd.obj.h-dd.e.y;
   if (window.my_PickFunc) my_PickFunc();
   if (dd.obj.pickFunc) dd.obj.pickFunc();
   DDScroll();
   return !(
    dd.obj.is_resized
    || dd.n4 && dd.obj.is_image
    || dd.n6 || dd.w3c
   );
  }
 }
 if (dd.downFunc) return dd.downFunc(d_ev);
 return true;
}
function DRAG(d_ev)
{
 if (!dd.obj || !dd.obj.visible) return true;
 if (dd.ie4 || dd.w3c || dd.n6 || dd.obj.children.length > 0xf)
 {
  if (dd.wait) return false;
  dd.wait = 1;
  setTimeout('dd.wait = 0;', dd.tiv);
 }
 dd.e = new dd.evt(d_ev);
 if (dd.ie && !dd.e.but)
 {
  DROP(d_ev);
  return true;
 }
 dd.msmoved = 1;
 dd.obj.moveTo(
  dd.obj.vertical? dd.obj.x : dd.maxOffX(dd.inWndW(dd.ofx+dd.e.x)-dd.obj.w),
  dd.obj.horizontal? dd.obj.y : dd.maxOffY(dd.inWndH(dd.ofy+dd.e.y)-dd.obj.h)
 );

 if (window.my_DragFunc) my_DragFunc();
 if (dd.obj.dragFunc) dd.obj.dragFunc();
 if (dd.moveFunc) return dd.moveFunc(d_ev);
 return false;
}
function RESIZE(d_ev)
{
 if (!dd.obj || !dd.obj.visible) return true;
 if (dd.wait) return false;
 dd.wait = 1;
 setTimeout('dd.wait = 0;', dd.tiv);
 dd.e = new dd.evt(d_ev);
 if (dd.ie && !dd.e.but)
 {
  DROP(d_ev);
  return true;
 }
 dd.msmoved = 1;
 var d_w = dd.limW(dd.inWndW(dd.ofx+dd.e.x)-dd.obj.x), d_h;
 if (!dd.whratio) d_h = dd.limH(dd.inWndH(dd.ofy+dd.e.y)-dd.obj.y);
 else
 {
  d_h = dd.limH(dd.inWndH(Math.round(d_w/dd.whratio)+dd.obj.y)-dd.obj.y);
  d_w = Math.round(d_h*dd.whratio);
 }
 dd.reszTo(d_w, d_h);
 if (window.my_ResizeFunc) my_ResizeFunc();
 if (dd.obj.resizeFunc) dd.obj.resizeFunc();
 if (dd.moveFunc) return dd.moveFunc(d_ev);
 return false;
}
function DROP(d_ev)
{
 if (dd.obj)
 {
  if (dd.obj.is_dragged)
  {
   if (!dd.obj.is_image) dd.getWH(dd.obj);
  }
  else if (dd.n4)
  {
   if (dd.obj.is_image)
   {
    dd.n4RectVis(0);
    dd.obj.resizeTo(dd.obj.w, dd.obj.h);
   }
  }
  if (!dd.n4 || !dd.obj.is_image) dd.recalc();
  dd.setMovHdl(dd.moveFunc);
  dd.setUpHdl(dd.upFunc);
  if (dd.db) dd.db.onselectstart = null;
  dd.obj._setOpaRel(1.0);
  dd.obj._setCrs(dd.obj.cursor);
  dd.embedVis('visible');
  dd.obj._resetZ();
  dd.e = new dd.evt(d_ev);
  if (window.my_DropFunc) my_DropFunc();
  if (dd.obj.dropFunc) dd.obj.dropFunc();
  dd.msmoved = dd.obj.is_dragged = dd.obj.is_resized = dd.whratio = 0;
  dd.obj = null;
 }
 dd.setDwnHdl(PICK);
}
function SET_DHTML()
{
 var d_a = arguments, d_ai, d_htm = '', d_o, d_i = d_a.length; while(d_i--)
 {
  if (!(d_ai = d_a[d_i]).indexOf('c:')) dd.cursor = d_ai.substring(2);
  else if (d_ai == NO_ALT) dd.noalt = 1;
  else if (d_ai == SCROLL) dd.scroll = 1;
  else if (d_ai == RESET_Z) dd.re_z = 1;
  else if (d_ai == RESIZABLE) dd.resizable = 1;
  else if (d_ai == SCALABLE) dd.scalable = 1;
  else if (d_ai == TRANSPARENT) dd.diaphan = 1;
  else
  {
   d_o = new DDObj(d_ai);
   dd.addElt(d_o);
   d_htm += d_o.t_htm || '';
   if (d_o.oimg && d_o.cpy_n)
   {
    var d_j = 0; while(d_j < d_o.cpy_n)
    {
     var d_p = new DDObj(d_o.name+d_o.cmd, ++d_j);
     dd.addElt(d_p, d_o);
     d_p.defz = d_o.defz+d_j;
     d_p.original = d_o;
     d_htm += d_p.t_htm;
    }
   }
  }
 }
 if (dd.n4 || dd.n6 || dd.ie || dd.op || dd.w3c) document.write(
  (dd.n4? '<div style="position:absolute;"><\/div>\n'
  : dd.op? '<div id="OpBlUr" style="position:absolute;visibility:hidden;width:0px;height:0px;"><form><input type="text" style="width:0px;height:0px;"><\/form><\/div>'
  : '') + d_htm
 );
 dd.z = 0x33;
 d_i = dd.elements.length; while(d_i--)
 {
  dd.addProps(d_o = dd.elements[d_i]);
  if (d_o.is_image && !d_o.original && !d_o.clone)
   dd.n4? d_o.oimg.src = spacer : d_o.oimg.style.visibility = 'hidden';
 }
 dd.mkWzDom();
 if (window.onload) dd.loadFunc = window.onload;
 if (window.onunload) dd.uloadFunc = window.onunload;
 window.onload = dd.initz;
 window.onunload = dd.finlz;
 dd.setDwnHdl(PICK);
}
function ADD_DHTML(d_o) // layers only!
{
 d_o = new DDObj(d_o);
 dd.addElt(d_o);
 dd.addProps(d_o);
 dd.mkWzDom();
}

 


////////////////////////////////////////////////////////////
// If not needed, all code below this line may be removed


// For backward compatibility
dd.d = document;   // < v. 2.72
var RESET_ZINDEX = RESET_Z; // < 3.44
var KEYDOWN_RESIZE = RESIZABLE; // < 4.43
var CURSOR_POINTER = CURSOR_HAND; // < 4.44
var NO_SCROLL = '';   // < v. 4.49

 


////////////////////////////////////////////////////////////
// FUNCTIONS FOR EXTENDED SCRIPTING
// Use these for your own extensions,
// or to call functions defined elsewhere

 

/* my_PickFunc IS AUTOMATICALLY CALLED WHEN AN ITEM STARTS TO BE DRAGGED.
The following objects/properties are accessible from here:

- dd.e: current mouse event
- dd.e.property: access to a property of the current mouse event.
  Mostly requested properties:
  - dd.e.x: document-related x co-ordinate
  - dd.e.y: document-related y co-ord
  - dd.e.src: target of mouse event (not identical with the drag drop object itself).
  - dd.e.button: currently pressed mouse button. Left button: dd.e.button <= 1

- dd.obj: reference to currently dragged item.
- dd.obj.property: access to any property of that item.
- dd.obj.method(): for example dd.obj.resizeTo() or dd.obj.swapImage() .
  Mostly requested properties:
 - dd.obj.name: image name or layer ID passed to SET_DHTML();
 - dd.obj.x and dd.obj.y: co-ordinates;
 - dd.obj.w and dd.obj.h: size;
 - dd.obj.is_dragged: 1 while item is dragged, else 0;
 - dd.obj.is_resized: 1 while item is resized, i.e. if <ctrl> or <shift> is pressed, else 0

For more properties and details, visit the API documentation
at http://www.walterzorn.com/dragdrop/api_e.htm (english) or
http://www.walterzorn.de/dragdrop/api.htm (german) */
function my_PickFunc()
{
}

 


/* my_DragFunc IS CALLED WHILE AN ITEM IS DRAGGED
See the description of my_PickFunc above for what's accessible from here. */
function my_DragFunc()
{
 //window.status = 'dd.elements.' + dd.obj.name + '.x  = ' + dd.obj.x + '  dd.elements.' + dd.obj.name + '.y = ' + dd.obj.y;
}

 


/* my_ResizeFunc IS CALLED WHILE AN ITEM IS RESIZED
See the description of my_PickFunc above for what's accessible from here. */
function my_ResizeFunc()
{
 //window.status = 'dd.elements.' + dd.obj.name + '.w  = ' + dd.obj.w + '  dd.elements.' + dd.obj.name + '.h = ' + dd.obj.h;
}

 


/* THIS ONE IS CALLED ONCE AN ITEM IS DROPPED
See the description of my_PickFunc for what's accessible from here.
Here may be investigated, for example, what's the name (dd.obj.name)
of the dropped item, and where (dd.obj.x, dd.obj.y) it has been dropped... */
function my_DropFunc()
{
}
--------------------------------------------------------------------------------------------------------
3可拖动,可变话大小的层次

 


<script>
 /**
 * 函数:f_check_submit(obj,button)
 * 功能:提交时检测内容是否为空,提交后按钮变为不可用
 * 参数:obj 输入框的名字,button 提交按钮的名字
 */
 function f_check_submit(obj,button) {
  /**
  * 如果内容为空,不提交
  */
  if (obj.value == '') {
   alert('请添写相关内容');
   obj.focus();
   return false;
  }
  /**
  * 设置按钮为不可用,防止重复提交
  */
  else {
   button.disabled = true;
  }
 }
</script>

 

<title>AIIIQ - 在线文档</title>
<META HTTP-EQUIV='content-type' CONTENT='text/html; CHARSET=GB2312'>
<STYLE>
 body {
  font-size: 12;
  font-family: '宋体';
  margin:6;
 }

 table {
  font-size: 12;
  font-family: '宋体';
  align: 'center';
 }

 textarea {
  font-size: 12;
  font-family: '宋体';
  border:1 solid menu;
 }

 textarea.read {
  background: menu;
 }

 textarea.text {
  background: #FFFFFF;
 }

 input {
  font-size: 12;
  font-family: '宋体';
 }

 input.text {
  border:1 solid menu;
 }

 input.button {
  border:1 ridge menu;
  background: menu;
  FILTER:progid:DXImageTransform.Microsoft.Gradient(startColorStr=#FFFFFF, endColorStr=menu, gradientType=0);
 }

 input.read {
  border:1 solid menu;
  background: menu;
 }

 form {
  margin:0;
 }

 a {
  color:#0000ff;
  text-decoration:none;
 }

 a:hover {
  color:#FF0000;
  text-decoration:none;
 }
 hr
 {
  height:1;
 }
</STYLE>

 


<a href='http://www.aiiiq.com'>(C)AIIIQ </a><a href=index.php>[最新文档]</a><a href=dir_list.php>[管理记事本]</a>
<hr>

当前状态:浏览文档<br>

<form name='form1' method='post' onsubmit='Save();'>
<input name='mydata' type='hidden'>
<input name='makesure' type='hidden' value='1'>
<input name='submit' type='submit' value='保存' class='button'>
<input type='button' value='取消' class='button' onClick='location.replace("index.php")'><br>
</form>

<input id='count' type='hidden' value='0'>
<div id='mdiv' style='position:absolute; width:778; height:expression(this.offsetWidth*5); left:expression((window.screen.width-800)/2); border:1 dotted #BED9EB;'></div>
<div id='sdiv' style='visibility:hidden; position:absolute; background-color:#BED9EB; filter:alpha(opacity=40);'></div>


<script>count.value=0</script>

<table id='mywin0' value='141' cellpadding='4' cellspacing='0' style='position:absolute; left:expression(mdiv.offsetLeft+100); top:expression(mdiv.offsetTop+100); width:100; height:100; z-index:100; TABLE-LAYOUT:fixed; WORD-BREAK:break-all; border:1 solid #BED9EB; background-color:#ffffff; FONT-SIZE:12; FONT-FAMILY:宋体;' onmousedown=Focus(this)>
 <tr style='display:none'><td></td><td style='width:45;'></td><td style='width:10;'></td></tr> <!-- 固定单元格宽度 -->
 <tr style='cursor:default; background-color:#BED9EB;' onmousedown=Down(this) onmousemove=Remove(this) onmouseup=Up(this)>
  <td nowrap style='font-weight:bolder; color:#3C8DC4; filter:progid:DXImageTransform.Microsoft.Gradient(startColorStr=#FFFFFF, endColorStr=#BED9EB, gradientType=0);'>
er4e  </td>
  <td nowrap colspan='2' align='right' style='filter:progid:DXImageTransform.Microsoft.Gradient(startColorStr=#FFFFFF, endColorStr=#BED9EB, gradientType=0);'>
<a href='ele_del.php?id=141'>[删]</a><a href='ele_edit.php?id=141'>[改]</a>
  </td>
 </tr>
 <tr>
  <td colspan='3' valign='top' style='height:100%; padding-top:10; padding-left:10; padding-right:10; padding-bottom:0'>
erersdfsdfsdfsdfsdf  </td>
 </tr>
 <tr>
  <td colspan='2'><td style='cursor:se-resize; height:10; background-color:#BED9EB; filter:progid:DXImageTransform.Microsoft.Gradient(startColorStr=#BED9EB, endColorStr=#FFFFFF, gradientType=1);' onmousedown=Down(this) onmousemove=Resize(this) onmouseup=Up(this)></td>
 </tr>
</table>

 

 

<script>
 /**
 * 作者: aiiiq
 * 邮件: aiiiq@yahoo.com.cn
 * 网址: http://www.aiiiq.com
 * 日期: 2005-9-6 09:20:00
 * 环境: IE6.0.2800.2106 & WIN98 & 网吧 & 北京
 * 致谢: 特别感谢CSDN的朋友们,谢谢你们的热心帮助!
 */

 /**
 * 初始化
 */
 move = null; //移动标记
 wmin = 100; //最小的窗口为100x100
 zmax = 10000; //记录当前的最高层
 ssize = 4; //阴影宽度

 /**
 * 父窗口内按下鼠标时,得到相关的值
 */
 function Down(obj)
 {
  move = 1;
  obj.x = event.x; //鼠标起始位置
  obj.y = event.y;
  obj.l = obj.offsetParent.offsetLeft; //父元素当前位置
  obj.t = obj.offsetParent.offsetTop;
  obj.w = obj.offsetParent.offsetWidth;
  obj.h = obj.offsetParent.offsetHeight;
  obj.ml = mdiv.offsetLeft; //最大的层
  obj.mt = mdiv.offsetTop;
  obj.mw = mdiv.offsetWidth;
  obj.mh = mdiv.offsetHeight;
  Shadow(obj) //重画阴影
  obj.setCapture(); //得到鼠标
 }

 /**
 * 标题栏托动窗口
 * 重要说明:所有窗口的left, top是mdiv的相对位置;width, height是窗口本身的值
 */
 function Remove(obj)
 {
  if(move != null)
  {
   cur = event.x - obj.x + obj.l; //父元素新位置 = 鼠标移过的位置 + 父元素原位置
   cur = Math.max(cur, obj.ml); //父元素的最小位置
   obj.offsetParent.style.left = Math.min(cur, obj.ml + obj.mw - obj.w); //父元素的最大位置

   cur = event.y - obj.y + obj.t;
   cur = Math.max(cur, obj.mt);
   obj.offsetParent.style.top = Math.min(cur, obj.mt + obj.mh - obj.h);

   Shadow(obj) //重画阴影
   }
 }

 /**
 * 状态栏改变窗口大小
 */
 function Resize(obj)
 {
  if(move != null)
  {
   cur = event.x - obj.x + obj.w; //父元素新宽度 = 鼠标移过的位置 + 父元素原宽度
   cur = Math.max(cur, obj.mw / 10); //父元素的最小宽度
   obj.offsetParent.style.width = Math.min(cur, obj.mw - (obj.l - obj.ml)); //父元素的最大宽度

   cur = event.y - obj.y + obj.h;
   cur = Math.max(cur, obj.mw / 10);
   obj.offsetParent.style.height = Math.min(cur, obj.mh - (obj.t - obj.mt));

   Shadow(obj) //重画阴影
  }
 }

 /**
 * 放开鼠标时,清理不用的东西
 */
 function Up(obj)
 {
  move = null;
  sdiv.style.visibility = 'hidden'; //隐藏阴影
  obj.releaseCapture(); //释放鼠标
 }

 /**
 * 父窗口按下鼠标时,将当前层置顶
 */
 function Focus(obj)
 {
  zmax = zmax +10; //最高层(变量)每次点击加10,以保证最高
  obj.style.zIndex = zmax; //将当前层置顶,当前层 = 最高层
  sdiv.style.zIndex = zmax - 1; //阴影的层 = 最高层 - 1
 }

 /**
 * 标题栏按下鼠标或移动窗口时,重画阴影
 */
 function Shadow(obj)
 {
  /**
  * 阴影的位置 = 新的父元素位置 + 阴影宽度
  */
  sdiv.style.left = obj.offsetParent.offsetLeft + ssize;
  sdiv.style.top = obj.offsetParent.offsetTop + ssize;
  sdiv.style.width = obj.offsetParent.offsetWidth;
  sdiv.style.height = obj.offsetParent.offsetHeight;
  sdiv.style.visibility = 'visible';
 }

 /**
 * 提交
 * data format: left,top,width,height,zindex,id|
 * 100,100,100,194,100,123|100,100,100,411,100,122|
 */
 function Save()
 {
  for(i=0; i<=count.value; i++)
  {
   mywin = document.getElementById('mywin'+i);
   myleft = mywin.offsetLeft - mdiv.offsetLeft;
   mytop = mywin.offsetTop - mdiv.offsetTop;
   mywidth = mywin.offsetWidth;
   myheight = mywin.offsetHeight;
   myzindex = mywin.style.zIndex;
   myid = mywin.value;
   form1.mydata.value += myleft + ',' + mytop + ',' + mywidth + ',' + myheight + ',' + myzindex + ',' + myid + '|';
  }
  form1.mydata.value = form1.mydata.value.substr(0, form1.mydata.value.length - 1);
 }

</script>
====================================================

Div被Select挡住,是一个比较常见的问题。
有的朋友通过把div的内容放入iframe或object里来解决。
可惜这样会破坏页面的结构,互动性不大好。

这里采用的方法是:

虽说div直接盖不住select
但是div可以盖iframe,而iframe可以盖select,
所以,把一个iframe来当作div的底,
这个div就可以盖住select了
.
http://jkisjk.vip.sina.com/html/DivBeforeSelect.htm

<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>JK:支持民族工业,尽量少买X货</title>

</head>

<body>
<iframe  style="position:absolute;z-index:9;width:expression(this.nextSibling.offsetWidth);height:expression(this.nextSibling.offsetHeight);top:expression(this.nextSibling.offsetTop);left:expression(this.nextSibling.offsetLeft);" frameborder="0" ></iframe>
<div style="z-index:10;position:absolute;background-color:blue;width:100;height:18;overflow:hidden;" onmouseover="this.style.height=54;" onmouseout="this.style.height=18;">aaaaaaa<br>bbbbbbb<br>ccccccc</div>

<select style="width:200" ><option>test0<option>test1<option>test2<option>test3</select>
<br>
<pre>
Div被Select挡住,是一个比较常见的问题。
有的朋友通过把div的内容放入iframe或object里来解决。
可惜这样会破坏页面的结构,互动性不大好。

这里采用的方法是:

虽说div直接盖不住select
但是div可以盖iframe,而iframe可以盖select,
所以,把一个iframe来当作div的底,
这个div就可以盖住select了.

</pre>

</body>

</html>

 

 

 


 

posted on 2005-09-09 12:07  猪头  阅读(1963)  评论(0)    收藏  举报

欢迎访问诗词在线http://www.chinapoesy.com   诗词在线 |唐诗|宋词|元曲|诗经|离骚|乐府|古典诗歌|现代诗歌|古典诗词|现代诗词|诗歌可以陶冶你的情操、丰富你的生活,让你更具内涵。诗词在线打造中国最好的诗词社区!

诗词在线社区

126在线阅读网 历史书籍、文学书籍、小说。。。