jQuery 中的center居中方法

			jQuery.fn.center = function(f) {
				return this.each(function(){
					var p = f===false?document.body:this.parentNode;
					if ( p.nodeName.toLowerCase()!= "body" && jQuery.css(p,"position") == 'static' )
						p.style.position = 'relative';
					var s = this.style;
					s.position = 'absolute';
					if(p.nodeName.toLowerCase() == "body")
						var w=$(window);
					if(!f || f == "horizontal") {
						s.left = "0px";
						if(p.nodeName.toLowerCase() == "body") {
							var clientLeft = w.scrollLeft() - 10 + (w.width() - parseInt(jQuery.css(this,"width")))/2;
							s.left = Math.max(clientLeft,0) + "px";
						}else if(((parseInt(jQuery.css(p,"width")) - parseInt(jQuery.css(this,"width")))/2) > 0)
							s.left = ((parseInt(jQuery.css(p,"width")) - parseInt(jQuery.css(this,"width")))/2) + "px";
					}
					if(!f || f == "vertical") {
						s.top = "0px";
						if(p.nodeName.toLowerCase() == "body") {
							var clientHeight = w.scrollTop() - 10 + (w.height() - parseInt(jQuery.css(this,"height")))/2;
							s.top = Math.max(clientHeight,0) + "px";
						}else if(((parseInt(jQuery.css(p,"height")) - parseInt(jQuery.css(this,"height")))/2) > 0)
							s.top = ((parseInt(jQuery.css(p,"height")) - parseInt(jQuery.css(this,"height")))/2) + "px";
					}
				});
			};

你可能感兴趣的:(jquery)