Created the new plugins directory.
authorJohn Resig <jeresig@gmail.com>
Sun, 13 Aug 2006 14:51:02 +0000 (14:51 +0000)
committerJohn Resig <jeresig@gmail.com>
Sun, 13 Aug 2006 14:51:02 +0000 (14:51 +0000)
plugins/center/center.js [new file with mode: 0644]

diff --git a/plugins/center/center.js b/plugins/center/center.js
new file mode 100644 (file)
index 0000000..81ef187
--- /dev/null
@@ -0,0 +1,26 @@
+/**
+ * Takes all matched elements and centers them, absolutely, 
+ * within the context of their parent element. Great for 
+ * doing slideshows.
+ *   $("div img").center();
+ */
+$.fn.center = function(f) {
+       return this.each(function(){
+               if ( !f && this.nodeName == 'IMG' &&
+                                !this.offsetWidth && !this.offsetHeight ) {
+                       var self = this;
+                       setTimeout(function(){
+                               $(self).center(true);
+                       }, 13);
+               } else {
+                       var s = this.style;
+                       var p = this.parentNode;
+                       if ( $.css(p,"position") == 'static' ) {
+                               p.style.position = 'relative';
+                       }
+                       s.position = 'absolute';
+                       s.left = (($.css(p,"width") - $.css(this,"width"))/2) + "px";
+                       s.top = (($.css(p,"height") - $.css(this,"height"))/2) + "px";
+               }
+  });
+};