jquery
This commit is contained in:
Vendored
+7
@@ -0,0 +1,7 @@
|
||||
/**
|
||||
* Featherlight Gallery – an extension for the ultra slim jQuery lightbox
|
||||
* Version 1.7.13 - http://noelboss.github.io/featherlight/
|
||||
*
|
||||
* Copyright 2018, Noël Raoul Bossart (http://www.noelboss.com)
|
||||
* MIT Licensed.
|
||||
**/!function(a){"use strict";function b(c,d){if(!(this instanceof b)){var e=new b(a.extend({$source:c,$currentTarget:c.first()},d));return e.open(),e}a.featherlight.apply(this,arguments),this.chainCallbacks(h)}var c=function(a){window.console&&window.console.warn&&window.console.warn("FeatherlightGallery: "+a)};if("undefined"==typeof a)return c("Too much lightness, Featherlight needs jQuery.");if(!a.featherlight)return c("Load the featherlight plugin before the gallery plugin");var d="ontouchstart"in window||window.DocumentTouch&&document instanceof DocumentTouch,e=a.event&&a.event.special.swipeleft&&a,f=window.Hammer&&function(a){var b=new window.Hammer.Manager(a[0]);return b.add(new window.Hammer.Swipe),b},g=d&&(e||f);d&&!g&&c("No compatible swipe library detected; one must be included before featherlightGallery for swipe motions to navigate the galleries.");var h={afterClose:function(a,b){var c=this;return c.$instance.off("next."+c.namespace+" previous."+c.namespace),c._swiper&&(c._swiper.off("swipeleft",c._swipeleft).off("swiperight",c._swiperight),c._swiper=null),a(b)},beforeOpen:function(a,b){var c=this;return c.$instance.on("next."+c.namespace+" previous."+c.namespace,function(a){var b="next"===a.type?1:-1;c.navigateTo(c.currentNavigation()+b)}),g&&(c._swiper=g(c.$instance).on("swipeleft",c._swipeleft=function(){c.$instance.trigger("next")}).on("swiperight",c._swiperight=function(){c.$instance.trigger("previous")}),c.$instance.addClass(this.namespace+"-swipe-aware",g)),c.$instance.find("."+c.namespace+"-content").append(c.createNavigation("previous")).append(c.createNavigation("next")),a(b)},beforeContent:function(a,b){var c=this.currentNavigation(),d=this.slides().length;return this.$instance.toggleClass(this.namespace+"-first-slide",0===c).toggleClass(this.namespace+"-last-slide",c===d-1),a(b)},onKeyUp:function(a,b){var c={37:"previous",39:"next"}[b.keyCode];return c?(this.$instance.trigger(c),!1):a(b)}};a.featherlight.extend(b,{autoBind:"[data-featherlight-gallery]"}),a.extend(b.prototype,{previousIcon:"◀",nextIcon:"▶",galleryFadeIn:100,galleryFadeOut:300,slides:function(){return this.filter?this.$source.find(this.filter):this.$source},images:function(){return c("images is deprecated, please use slides instead"),this.slides()},currentNavigation:function(){return this.slides().index(this.$currentTarget)},navigateTo:function(b){var c=this,d=c.slides(),e=d.length,f=c.$instance.find("."+c.namespace+"-inner");return b=(b%e+e)%e,c.$currentTarget=d.eq(b),c.beforeContent(),a.when(c.getContent(),f.fadeTo(c.galleryFadeOut,.2)).always(function(a){c.setContent(a),c.afterContent(),a.fadeTo(c.galleryFadeIn,1)})},createNavigation:function(b){var c=this;return a('<span title="'+b+'" class="'+this.namespace+"-"+b+'"><span>'+this[b+"Icon"]+"</span></span>").click(function(d){a(this).trigger(b+"."+c.namespace),d.preventDefault()})}}),a.featherlightGallery=b,a.fn.featherlightGallery=function(a){return b.attach(this,a),this},a(document).ready(function(){b._onReady()})}(jQuery);
|
||||
Vendored
+8
File diff suppressed because one or more lines are too long
@@ -0,0 +1,84 @@
|
||||
/**
|
||||
* jquery.detectSwipe v2.1.3
|
||||
* jQuery Plugin to obtain touch gestures from iPhone, iPod Touch, iPad and Android
|
||||
* http://github.com/marcandre/detect_swipe
|
||||
* Based on touchwipe by Andreas Waltl, netCU Internetagentur (http://www.netcu.de)
|
||||
*/
|
||||
|
||||
(function (factory) {
|
||||
if (typeof define === 'function' && define.amd) {
|
||||
// AMD. Register as an anonymous module.
|
||||
define(['jquery'], factory);
|
||||
} else if (typeof exports === 'object') {
|
||||
// Node/CommonJS
|
||||
module.exports = factory(require('jquery'));
|
||||
} else {
|
||||
// Browser globals
|
||||
factory(jQuery);
|
||||
}
|
||||
}(function($) {
|
||||
|
||||
$.detectSwipe = {
|
||||
version: '2.1.2',
|
||||
enabled: 'ontouchstart' in document.documentElement,
|
||||
preventDefault: true,
|
||||
threshold: 20
|
||||
};
|
||||
|
||||
var startX,
|
||||
startY,
|
||||
isMoving = false;
|
||||
|
||||
function onTouchEnd() {
|
||||
this.removeEventListener('touchmove', onTouchMove);
|
||||
this.removeEventListener('touchend', onTouchEnd);
|
||||
isMoving = false;
|
||||
}
|
||||
|
||||
function onTouchMove(e) {
|
||||
if ($.detectSwipe.preventDefault) { e.preventDefault(); }
|
||||
if(isMoving) {
|
||||
var x = e.touches[0].pageX;
|
||||
var y = e.touches[0].pageY;
|
||||
var dx = startX - x;
|
||||
var dy = startY - y;
|
||||
var dir;
|
||||
if(Math.abs(dx) >= $.detectSwipe.threshold) {
|
||||
dir = dx > 0 ? 'left' : 'right'
|
||||
}
|
||||
else if(Math.abs(dy) >= $.detectSwipe.threshold) {
|
||||
dir = dy > 0 ? 'up' : 'down'
|
||||
}
|
||||
if(dir) {
|
||||
onTouchEnd.call(this);
|
||||
$(this).trigger('swipe', dir).trigger('swipe' + dir);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function onTouchStart(e) {
|
||||
if (e.touches.length == 1) {
|
||||
startX = e.touches[0].pageX;
|
||||
startY = e.touches[0].pageY;
|
||||
isMoving = true;
|
||||
this.addEventListener('touchmove', onTouchMove, false);
|
||||
this.addEventListener('touchend', onTouchEnd, false);
|
||||
}
|
||||
}
|
||||
|
||||
function setup() {
|
||||
this.addEventListener && this.addEventListener('touchstart', onTouchStart, false);
|
||||
}
|
||||
|
||||
function teardown() {
|
||||
this.removeEventListener('touchstart', onTouchStart);
|
||||
}
|
||||
|
||||
$.event.special.swipe = { setup: setup };
|
||||
|
||||
$.each(['left', 'up', 'down', 'right'], function () {
|
||||
$.event.special['swipe' + this] = { setup: function(){
|
||||
$(this).on('swipe', $.noop);
|
||||
} };
|
||||
});
|
||||
}));
|
||||
Reference in New Issue
Block a user