From 40fdf0ad5c0dd13546a2a0925778605c5e7b1173 Mon Sep 17 00:00:00 2001 From: John Resig Date: Sun, 9 Apr 2006 04:04:52 +0000 Subject: [PATCH] Started work on new attr plugin - will provide a ton of accessors for common styles and attributes. --- attr/attr.js | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 attr/attr.js diff --git a/attr/attr.js b/attr/attr.js new file mode 100644 index 00000000..21331b63 --- /dev/null +++ b/attr/attr.js @@ -0,0 +1,37 @@ +var pos = [ + "height", "width", "top", "left", "bottom", "right", + "paddingTop", "paddingRight", "paddingBottom", "paddingLeft", + "marginTop", "marginRight", "marginBottom", "marginLeft", + "lineHeight", "maxWidth", "maxHeight", "minWidth", "minHeight", + "textIndent", "fontSize" +]; + +for ( var i = 0; i < pos.length; i++ ) { + (function(){ + var o = pos[i]; + $.fn[o] = function(a){ + return a ? + this.css(o,a) : + parseInt( this.css(o) ); + }; + })(); +} + +var posArg = [ + "clientLeft", "clientTop", "clientWidth", "clientHeight", + "offsetLeft", "offsetTop", "offsetWidth", "offsetHeight", + "scrollLeft", "scrollTop", "scrollWidth", "scrollHeight" +]; + +for ( var i = 0; i < posArg.length; i++ ) { + (function(){ + var o = posArg[i]; + $.fn[o] = function(a){ + return a ? this.each(function(){ + this[o] = parseInt( a ); + }) : this.size() > 0 ? + this.get(0)[o] : + null; + }; + })(); +} \ No newline at end of file