⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wz_dragdrop.js

📁 java版源代码,里面包含很多源代码,大家可以看看.
💻 JS
📖 第 1 页 / 共 3 页
字号:
	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 rectangledd.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 Ltolf <gregor@milou.ch>, modified by Walter Zorndd.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 Zornfunction DDScroll(){	if(!dd.obj || !dd.obj.scroll && !dd.scroll || 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_t, 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 && (d_t = dd.e.src.tag).indexOf('inpu') < 0 && d_t.indexOf('texta') < 0 && d_t.indexOf('sele') < 0 && d_t.indexOf('opti') < 0 && d_t.indexOf('scrol') < 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 && !dd.op6)? '<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 compatibilitydd.d = document;			// < v. 2.72var RESET_ZINDEX = RESET_Z; // < 3.44var KEYDOWN_RESIZE = RESIZABLE; // < 4.43var CURSOR_POINTER = CURSOR_HAND; // < 4.44var 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 0For more properties and details, visit the API documentationat http://www.walterzorn.com/dragdrop/api_e.htm (english) orhttp://www.walterzorn.de/dragdrop/api.htm (german)	*/function my_PickFunc(){}/* my_DragFunc IS CALLED WHILE AN ITEM IS DRAGGEDSee 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 RESIZEDSee 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 DROPPEDSee 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(){}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -