Index: jcarousel.module
===================================================================
--- jcarousel.module	(revision 2081)
+++ jcarousel.module	(working copy)
@@ -210,7 +210,7 @@
   $attachments = array(
     // TODO: Change this to 'library' in Drupal 7.
     'js' => array(
-      drupal_get_path('module', 'jcarousel') . '/js/jquery.jcarousel.min.js',
+      drupal_get_path('module', 'jcarousel') . '/js/jquery.jcarousel.js',
       drupal_get_path('module', 'jcarousel') . '/js/jcarousel.js',
     ),
   );
Index: js/jquery.jcarousel.js
===================================================================
--- js/jquery.jcarousel.js	(revision 2081)
+++ js/jquery.jcarousel.js	(working copy)
@@ -175,9 +175,9 @@
         this.buttonNext.css('display', 'block');
         this.buttonPrev.css('display', 'block');
 
-        this.funcNext   = function() { self.next(); };
-        this.funcPrev   = function() { self.prev(); };
-        this.funcResize = function() {
+        this.funcNext   = function() { self.next(); return false; };
+        this.funcPrev   = function() { self.prev(); return false; };
+        this.funcResize = function() { 
             if (self.resizeTimer) {
                 clearTimeout(self.resizeTimer);
             }
@@ -191,7 +191,7 @@
             this.options.initCallback(this, 'init');
         }
 
-        if (!windowLoaded && $.browser.safari) {
+        if (!windowLoaded && $.browser.safari && $.browser.version < 523) {
             this.buttons(false, false);
             $(window).bind('load.jcarousel', function() { self.setup(); });
         } else {
@@ -961,8 +961,18 @@
 
             if (d == null) {
                 return !this.options.vertical ?
-                       (el.outerWidth(true) || $jc.intval(this.options.itemFallbackDimension)) :
-                       (el.outerHeight(true) || $jc.intval(this.options.itemFallbackDimension));
+                    (($jc.intval(this.options.itemFallbackDimension) ||
+                        el.innerWidth() +
+                        $jc.intval(el.css('margin-left')) +
+                        $jc.intval(el.css('margin-right')) +
+                        $jc.intval(el.css('border-left-width')) +
+                        $jc.intval(el.css('border-right-width')))) :
+                    (($jc.intval(this.options.itemFallbackDimension) ||
+                        el.innerHeight() +
+                        $jc.intval(el.css('margin-top')) +
+                        $jc.intval(el.css('margin-bottom')) +
+                        $jc.intval(el.css('border-top-width')) +
+                        $jc.intval(el.css('border-bottom-width'))));
             } else {
                 var w = !this.options.vertical ?
                     d - $jc.intval(el.css('marginLeft')) - $jc.intval(el.css('marginRight')) :
