JQuery Animate iOS6 malfunction

HTML

<!DOCTYPE html>
<!--[if IE]><html class="ie"><![endif]-->
<!--[if !IE]><!--><html><!--<![endif]-->
    <head>
        
        <meta charset="utf-8" />
        <title>Animate</title>
        
        <meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
        <meta name="format-detection" content="telephone=no" />

        <style>
            
        </style>

    </head>
    <body>

        <section class="container">

            <div class="content" data-scroll data-scrollfor="ios4">
                
                <div class="editorial">
                    <div class="items" data-swipe="pager aimbot freestyle adjust">
                        
                        <div class="item">
                            <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur non elementum urna. Etiam volutpat, purus non pellentesque dictum, mi felis rhoncus purus, condimentum egestas orci nibh ut purus. Donec dictum commodo dui, sit amet sollicitudin nibh porta a. Mauris elementum libero malesuada purus vulputate ut sagittis leo viverra. Pellentesque sollicitudin lacinia tellus id elementum. Vestibulum convallis mi ac enim posuere in posuere metus adipiscing. Proin posuere feugiat enim, suscipit viverra risus tempus sed. Aliquam erat volutpat. Cras vel sapien gravida neque consequat malesuada a quis sem.</p>
                        </div><!-- / .item -->
                        
                        <div class="item">
                            <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur non elementum urna. Etiam volutpat, purus non pellentesque dictum, mi felis rhoncus purus, condimentum egestas orci nibh ut purus. Donec dictum commodo dui, sit amet sollicitudin nibh porta a. Mauris elementum libero malesuada purus vulputate ut sagittis leo viverra. Pellentesque sollicitudin lacinia tellus id elementum. Vestibulum convallis mi ac enim posuere in...

CSS

.editorial{ position:relative; width:500px; overflow:hidden; }
.items{ position:relative; white-space:nowrap; }
.item{ display:inline-block; width:500px; white-space:normal; vertical-align:top; }
.item ~ .item{ margin:0 0 0 -4px; }

JavaScript

// Vars
var start, last;

// Start
$('.editorial').get(0).addEventListener('touchstart', function(e) {
    console.log('Touch Start');
    // Only for one finger actions
    if (e.touches.length != 1) return;
    start = {
        x: null,
        y: null
    };
    last = {
        x: null,
        y: null
    };
}, false);

// Move
$('.editorial').get(0).addEventListener('touchmove', function(e) {
    console.log('Touch Move');
    // Only for one finger actions
    if (e.touches.length != 1) return;
    freestyle.apply($('.editorial').get(0), [e]);
}, false);

// Move
$('.editorial').get(0).addEventListener('touchend', function(e) {
    console.log('Touch End');
    $('.editorial .items').stop(true, false).animate({
        left: 0
    }, 250);
}, false);

var freestyle = function(e) {

    // Vars
    var me = this,
        $me = $(me),
        ref = $me.find('.items').get(0),
        $ref = $(ref),
        touch = e.touches[0],
        ex = touch.pageX,
        ey = touch.pageY,
        dif = ex - last.x,
        dx = ex - start.x,
        dy = ey - start.y;

    if (start.x == null) {
        start.x = ex;
        start.y = ey;
        return;
    };

    if (Math.abs(dx) / 2 > Math.abs(dy)) {
        e.preventDefault();
        e.stopPropagation();
    } else {
        return;
    };

    if (last.x != null) $ref.css({
        left: (ref.offsetLeft + dif)
    });

    last.x = ex;
    last.y = ey;

};