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

📄 html.js

📁 这是一个ajax的例子大家好好的看看就是一个鱼眼的效果
💻 JS
📖 第 1 页 / 共 3 页
字号:
	dojo.style = function(	/*DomNode|String*/ node, 							/*String?|Object?*/ style, 							/*String?*/ value){		//	summary:		//		Accesses styles on a node. If 2 arguments are		//		passed, acts as a getter. If 3 arguments are passed, acts		//		as a setter.		//	node:		//		id or reference to node to get/set style for		//	style:		//		the style property to set in DOM-accessor format		//		("borderWidth", not "border-width") or an object with key/value		//		pairs suitable for setting each property.		//	value:		//		If passed, sets value on the node for style, handling		//		cross-browser concerns.		//	example:		//		Passing only an ID or node returns the computed style object of		//		the node:		//	|	dojo.style("thinger");		//	example:		//		Passing a node and a style property returns the current		//		normalized, computed value for that property:		//	|	dojo.style("thinger", "opacity"); // 1 by default		//		//	example:		//		Passing a node, a style property, and a value changes the		//		current display of the node and returns the new computed value		//	|	dojo.style("thinger", "opacity", 0.5); // == 0.5		//		//	example:		//		Passing a node, an object-style style property sets each of the values in turn and returns the computed style object of the node:		//	|	dojo.style("thinger", {		//	|		"opacity": 0.5,		//	|		"border": "3px solid black",		//	|		"height": 300		//	|	});		//		// 	example:		//		When the CSS style property is hyphenated, the JavaScript property is camelCased.		//		font-size becomes fontSize, and so on.		//	|	dojo.style("thinger",{		//	|		fontSize:"14pt",		//	|		letterSpacing:"1.2em"		//	|	});		//		//	example:		//		dojo.NodeList implements .style() using the same syntax, omitting the "node" parameter, calling		//		dojo.style() on every element of the list. See: dojo.query and dojo.NodeList		//	|	dojo.query(".someClassName").style("visibility","hidden");		//	|	// or		//	|	dojo.query("#baz > div").style({		//	|		opacity:0.75,		//	|		fontSize:"13pt"		//	|	});		var n = d.byId(node), args = arguments.length, op = (style=="opacity");		style = _floatAliases[style] || style;		if(args == 3){			return op ? d._setOpacity(n, value) : n.style[style] = value; /*Number*/		}		if(args == 2 && op){			return d._getOpacity(n);		}		var s = gcs(n);		if(args == 2 && !d.isString(style)){			for(var x in style){				d.style(node, x, style[x]);			}			return s;		}		return (args == 1) ? s : _toStyleValue(n, style, s[style]); /* CSS2Properties||String||Number */	}	// =============================	// Box Functions	// =============================	dojo._getPadExtents = function(/*DomNode*/n, /*Object*/computedStyle){		//	summary:		// 		Returns object with special values specifically useful for node		// 		fitting.		//		// 		* l/t = left/top padding (respectively)		// 		* w = the total of the left and right padding 		// 		* h = the total of the top and bottom padding		//		//		If 'node' has position, l/t forms the origin for child nodes. 		//		The w/h are used for calculating boxes.		//		Normally application code will not need to invoke this		//		directly, and will use the ...box... functions instead.		var 			s = computedStyle||gcs(n), 			l = px(n, s.paddingLeft), 			t = px(n, s.paddingTop);		return { 			l: l,			t: t,			w: l+px(n, s.paddingRight),			h: t+px(n, s.paddingBottom)		};	}	dojo._getBorderExtents = function(/*DomNode*/n, /*Object*/computedStyle){		//	summary:		//		returns an object with properties useful for noting the border		//		dimensions.		//		// 		* l/t = the sum of left/top border (respectively)		//		* w = the sum of the left and right border		//		* h = the sum of the top and bottom border		//		//		The w/h are used for calculating boxes.		//		Normally application code will not need to invoke this		//		directly, and will use the ...box... functions instead.		var 			ne = "none",			s = computedStyle||gcs(n), 			bl = (s.borderLeftStyle != ne ? px(n, s.borderLeftWidth) : 0),			bt = (s.borderTopStyle != ne ? px(n, s.borderTopWidth) : 0);		return { 			l: bl,			t: bt,			w: bl + (s.borderRightStyle!=ne ? px(n, s.borderRightWidth) : 0),			h: bt + (s.borderBottomStyle!=ne ? px(n, s.borderBottomWidth) : 0)		};	}	dojo._getPadBorderExtents = function(/*DomNode*/n, /*Object*/computedStyle){		//	summary:		//		returns object with properties useful for box fitting with		//		regards to padding.		//		//		* l/t = the sum of left/top padding and left/top border (respectively)		//		* w = the sum of the left and right padding and border		//		* h = the sum of the top and bottom padding and border		//		//		The w/h are used for calculating boxes.		//		Normally application code will not need to invoke this		//		directly, and will use the ...box... functions instead.		var 			s = computedStyle||gcs(n), 			p = d._getPadExtents(n, s),			b = d._getBorderExtents(n, s);		return { 			l: p.l + b.l,			t: p.t + b.t,			w: p.w + b.w,			h: p.h + b.h		};	}	dojo._getMarginExtents = function(n, computedStyle){		//	summary:		//		returns object with properties useful for box fitting with		//		regards to box margins (i.e., the outer-box).		//		//		* l/t = marginLeft, marginTop, respectively		//		* w = total width, margin inclusive		//		* h = total height, margin inclusive		//		//		The w/h are used for calculating boxes.		//		Normally application code will not need to invoke this		//		directly, and will use the ...box... functions instead.		var 			s = computedStyle||gcs(n), 			l = px(n, s.marginLeft),			t = px(n, s.marginTop),			r = px(n, s.marginRight),			b = px(n, s.marginBottom);		if(d.isSafari && (s.position != "absolute")){			// FIXME: Safari's version of the computed right margin			// is the space between our right edge and the right edge 			// of our offsetParent. 			// What we are looking for is the actual margin value as 			// determined by CSS.			// Hack solution is to assume left/right margins are the same.			r = l;		}		return { 			l: l,			t: t,			w: l+r,			h: t+b		};	}	// Box getters work in any box context because offsetWidth/clientWidth	// are invariant wrt box context	//	// They do *not* work for display: inline objects that have padding styles	// because the user agent ignores padding (it's bogus styling in any case)	//	// Be careful with IMGs because they are inline or block depending on 	// browser and browser mode.	// Although it would be easier to read, there are not separate versions of 	// _getMarginBox for each browser because:	// 1. the branching is not expensive	// 2. factoring the shared code wastes cycles (function call overhead)	// 3. duplicating the shared code wastes bytes		dojo._getMarginBox = function(/*DomNode*/node, /*Object*/computedStyle){		// summary:		//		returns an object that encodes the width, height, left and top		//		positions of the node's margin box.		var s = computedStyle||gcs(node), me = d._getMarginExtents(node, s);		var	l = node.offsetLeft - me.l,	t = node.offsetTop - me.t;		if(d.isMoz){			// Mozilla:			// If offsetParent has a computed overflow != visible, the offsetLeft is decreased			// by the parent's border.			// We don't want to compute the parent's style, so instead we examine node's			// computed left/top which is more stable.			var sl = parseFloat(s.left), st = parseFloat(s.top);			if(!isNaN(sl) && !isNaN(st)){				l = sl, t = st;			}else{				// If child's computed left/top are not parseable as a number (e.g. "auto"), we				// have no choice but to examine the parent's computed style.				var p = node.parentNode;				if(p && p.style){					var pcs = gcs(p);					if(pcs.overflow != "visible"){						var be = d._getBorderExtents(p, pcs);						l += be.l, t += be.t;					}				}			}		}else if(d.isOpera){			// On Opera, offsetLeft includes the parent's border			var p = node.parentNode;			if(p){				var be = d._getBorderExtents(p);				l -= be.l, t -= be.t;			}		}		return { 			l: l, 			t: t, 			w: node.offsetWidth + me.w, 			h: node.offsetHeight + me.h 		};	}		dojo._getContentBox = function(node, computedStyle){		// summary:		//		Returns an object that encodes the width, height, left and top		//		positions of the node's content box, irrespective of the		//		current box model.		// clientWidth/Height are important since the automatically account for scrollbars		// fallback to offsetWidth/Height for special cases (see #3378)		var s=computedStyle||gcs(node), pe=d._getPadExtents(node, s), be=d._getBorderExtents(node, s), w=node.clientWidth, h;		if(!w){			w=node.offsetWidth, h=node.offsetHeight;		}else{			h=node.clientHeight, be.w = be.h = 0; 		}		// On Opera, offsetLeft includes the parent's border		if(d.isOpera){ pe.l += be.l; pe.t += be.t; };		return { 			l: pe.l, 			t: pe.t, 			w: w - pe.w - be.w, 			h: h - pe.h - be.h		};	}	dojo._getBorderBox = function(node, computedStyle){		var s=computedStyle||gcs(node), pe=d._getPadExtents(node, s), cb=d._getContentBox(node, s);		return { 			l: cb.l - pe.l, 			t: cb.t - pe.t, 			w: cb.w + pe.w, 			h: cb.h + pe.h		};	}	// Box setters depend on box context because interpretation of width/height styles	// vary wrt box context.	//	// The value of dojo.boxModel is used to determine box context.	// dojo.boxModel can be set directly to change behavior.	//	// Beware of display: inline objects that have padding styles	// because the user agent ignores padding (it's a bogus setup anyway)	//	// Be careful with IMGs because they are inline or block depending on 	// browser and browser mode.	// 	// Elements other than DIV may have special quirks, like built-in	// margins or padding, or values not detectable via computedStyle.	// In particular, margins on TABLE do not seems to appear 	// at all in computedStyle on Mozilla.		dojo._setBox = function(/*DomNode*/node, /*Number?*/l, /*Number?*/t, /*Number?*/w, /*Number?*/h, /*String?*/u){		//	summary:		//		sets width/height/left/top in the current (native) box-model		//		dimentions. Uses the unit passed in u.		//	node: DOM Node reference. Id string not supported for performance reasons.		//	l: optional. left offset from parent.		//	t: optional. top offset from parent.		//	w: optional. width in current box model.		//	h: optional. width in current box model.		//	u: optional. unit measure to use for other measures. Defaults to "px".		u = u || "px";		var s = node.style;		if(!isNaN(l)){ s.left = l+u; }		if(!isNaN(t)){ s.top = t+u; }		if(w>=0){ s.width = w+u; }		if(h>=0){ s.height = h+u; }	}	dojo._usesBorderBox = function(/*DomNode*/node){		//	summary: 		//		True if the node uses border-box layout.		// We could test the computed style of node to see if a particular box		// has been specified, but there are details and we choose not to bother.		var n = node.tagName;		// For whatever reason, TABLE and BUTTON are always border-box by default.		// If you have assigned a different box to either one via CSS then		// box functions will break.		return d.boxModel=="border-box" || n=="TABLE" || n=="BUTTON"; // boolean	}	dojo._setContentSize = function(/*DomNode*/node, /*Number*/widthPx, /*Number*/heightPx, /*Object*/computedStyle){		//	summary:		//		Sets the size of the node's contents, irrespective of margins,		//		padding, or borders.		if(d._usesBorderBox(node)){			var pb = d._getPadBorderExtents(node, computedStyle);			if(widthPx >= 0){ widthPx += pb.w; }			if(heightPx >= 0){ heightPx += pb.h; }		}		d._setBox(node, NaN, NaN, widthPx, heightPx);	}	dojo._setMarginBox = function(/*DomNode*/node, 	/*Number?*/leftPx, /*Number?*/topPx, 													/*Number?*/widthPx, /*Number?*/heightPx, 													/*Object*/computedStyle){		//	summary:		//		sets the size of the node's margin box and placement		//		(left/top), irrespective of box model. Think of it as a		//		passthrough to dojo._setBox that handles box-model vagaries for		//		you.		var s = computedStyle||gcs(node);		// Some elements have special padding, margin, and box-model settings. 		// To use box functions you may need to set padding, margin explicitly.		// Controlling box-model is harder, in a pinch you might set dojo.boxModel.		var bb=d._usesBorderBox(node),				pb=bb ? _nilExtents : d._getPadBorderExtents(node, s),				mb=d._getMarginExtents(node, s);		if(widthPx>=0){	widthPx = Math.max(widthPx - pb.w - mb.w, 0); }		if(heightPx>=0){ heightPx = Math.max(heightPx - pb.h - mb.h, 0); }		d._setBox(node, leftPx, topPx, widthPx, heightPx);	}		var _nilExtents = { l:0, t:0, w:0, h:0 };	// public API		dojo.marginBox = function(/*DomNode|String*/node, /*Object?*/box){		//	summary:		//		Getter/setter for the margin-box of node.		//	description: 		//		Returns an object in the expected format of box (regardless		//		if box is passed). The object might look like:		//			`{ l: 50, t: 200, w: 300: h: 150 }`		//		for a node offset from its parent 50px to the left, 200px from		//		the top with a margin width of 300px and a margin-height of		//		150px.		//	node:		//		id or reference to DOM Node to get/set box for		//	box:		//		If passed, denotes that dojo.marginBox() should		//		update/set the margin box for node. Box is an object in the		//		above format. All properties are optional if passed.		var n=d.byId(node), s=gcs(n), b=box;		return !b ? d._getMarginBox(n, s) : d._setMarginBox(n, b.l, b.t, b.w, b.h, s); // Object	}	dojo.contentBox = function(/*DomNode|String*/node, /*Object?*/box){		//	summary:		//		Getter/setter for the content-box of node.		//	description:		//		Returns an object in the expected format of box (regardless if box is passed).		//		The object might look like:		//			`{ l: 50, t: 200, w: 300: h: 150 }`		//		for a node offset from its parent 50px to the left, 200px from		//		the top with a content width of 300px and a content-height of		//		150px. Note that the content box may have a much larger border		//		or margin box, depending on the box model currently in use and		//		CSS values set/inherited for node.		//	node:		//		id or reference to DOM Node to get/set box for		//	box:		//		If passed, denotes that dojo.contentBox() should		//		update/set the content box for node. Box is an object in the		//		above format. All properties are optional if passed.		var n=dojo.byId(node), s=gcs(n), b=box;		return !b ? d._getContentBox(n, s) : d._setContentSize(n, b.w, b.h, s); // Object	}		// =============================	// Positioning 	// =============================	

⌨️ 快捷键说明

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