text: (function( $ ){
  
      function calculateResults(startX, startY, endX, endY, tresholdX, tresholdY){
          var swipeDirection = {up:false, right:false, down: false, left:false};
          if(startX > endX && startX - endX >= tresholdX)
              swipeDirection.left = true;
          else if(startX < endX && endX - startX >= tresholdX)
              swipeDirection.right = true;
          
          if(startY < endY && endY - startY >= tresholdY)
              swipeDirection.down = true
          else if(startY > endY && startY - endY >=tresholdY)
              swipeDirection.up = true;
  
          return swipeDirection;
  
      }
      $.fn.onSwipe = function(f, timeTreshold, tresholdX, tresholdY){
          if(jQuery.isFunction(f)){ //We are only going to do our thing if the user passed a function
  
          if(typeof timeTreshold === 'undefined' || timeTreshold === null)
              timeTreshold = 100;//ms
  
          if(typeof tresholdX === 'undefined' || tresholdX === null)
              tresholdX = 30;//px
          
          if(typeof tresholdY === 'undefined' || tresholdY === null)
              tresholdY = 30;//px
  
          var startX,  startY; //Position when touch begins
          var endX, endY; //Position when touch ends
  
          var time; //Our timer variable
          var totalTime = 0; //Total time that the swipe took
  
          //When a touch starts on this element.
              //We can start a timer, and start getting coordinates.
          $(this).on("touchstart", function(e){
  
              //Let's get our touch coordinates
              startX = e.touches[0].clientX; //This is where touchstart coordinates are stored
              startY = e.touches[0].clientY;
  
              time = setInterval(function(){ //Let's see how long the swipe lasts.
                  totalTime += 10;
              }, 10);
          });
  
          $(this).on("touchend", function(e){
  
              endX = e.changedTouches[0].clientX; //This is where touchend coordinates are stored.
              endY = e.changedTouches[0].clientY;
  
              clearInterval(time); //Let's stop calculating time and free up resources.
  
              if(totalTime >= timeTreshold) //If swipe time is less than our treshold we won't do anything. Useful for preventing spam and accidental swipes.
                  f(calculateResults(startX, startY, endX, endY, 30, 30)); //Send results to user's function
  
              
  
              totalTime = 0;
          });
          } else console.error("You need to pass a function in order to process swipe data.");
  
          return $(this);
      }
  })( jQuery );