diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 7daf8f54..2206f6a2 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -15,7 +15,7 @@ Tiny-slider was strongly inspired by [Owl Carousel](https://owlcarousel2.github. ### Fire an issue We can't test Tiny-slider on every browser and device. There are always some edge cases in which tiny-slider may not run properly. Fire an issue when it doesn't work for you. This not only helps you, also prevent others from facing the same issue. **Notes for firing issues:** -- Before you fire an issue, make sure you update to the latest version of each main version. (e.g. v2.1.7 for version 2) +- Before you fire an issue, make sure you update to the latest version of each main version. (e.g. v2.1.8 for version 2) - Provide the OS and browser version. - Provide a link or your plugin options. diff --git a/README.md b/README.md index ae1036f6..1b26168c 100755 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # tiny-slider 2.0 -![version](https://img.shields.io/badge/Version-2.1.7-green.svg) +![version](https://img.shields.io/badge/Version-2.1.8-green.svg) Tiny slider for all purposes, inspired by [Owl Carousel](https://owlcarousel2.github.io/OwlCarousel2/). [Demos](http://ganlanyuan.github.io/tiny-slider/tests/index.html) [Tests](http://ganlanyuan.github.io/tiny-slider/tests/tests.html) @@ -72,11 +72,11 @@ Note: some features may need a manual test. via [cdnjs](https://cdnjs.com/libraries/tiny-slider): ```html - + - - + + ``` Or import it via `webpack` or `rollup`: ```javascript diff --git a/bower.json b/bower.json index 17d245a4..c687dbd2 100755 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "tiny-slider", - "version": "2.1.7", + "version": "2.1.8", "homepage": "https://github.com/ganlanyuan/tiny-slider", "authors": [ "WilliamLin " diff --git a/dist/sourcemaps/tiny-slider.js.map b/dist/sourcemaps/tiny-slider.js.map index ad9ca389..1309ca1c 100644 --- a/dist/sourcemaps/tiny-slider.js.map +++ b/dist/sourcemaps/tiny-slider.js.map @@ -1 +1 @@ -{"version":3,"sources":["tiny-slider.js"],"names":["tns","extend","obj","name","copy","target","arguments","i","length","undefined","checkStorageValue","value","indexOf","JSON","parse","setLocalStorage","key","access","localStorage","setItem","getSlideId","id","window","tnsId","createStyleSheet","media","style","document","createElement","setAttribute","querySelector","appendChild","sheet","styleSheet","getCssRulesLength","cssRules","rules","toDegree","y","x","Math","atan2","PI","getTouchDirection","angle","range","direction","gap","abs","hasAttr","el","attr","hasAttribute","getAttr","getAttribute","isNodeList","item","setAttrs","els","attrs","Array","Object","prototype","toString","call","removeAttrs","attrLength","j","removeAttribute","hideElement","hidden","showElement","imageLoaded","img","complete","naturalWidth","whichProperty","props","prop","getEndProperty","propIn","propOut","endProp","test","toLowerCase","addEvents","option","passiveOption","addEventListener","removeEvents","removeEventListener","Events","topics","on","eventName","fn","this","push","off","splice","emit","data","forEach","jsTransform","element","prefix","postfix","to","duration","callback","moveElement","tick","from","positionTick","unit","setTimeout","min","replace","Number","keys","object","hasOwnProperty","Element","remove","parentNode","removeChild","testList","nativeAdd","nativeRemove","WIN","DOC","OBJ","LENGTH","METHODS","split","ADD","REMOVE","TOGGLE","PROTOTYPE","dpSupport","defineGetter","configurable","get","DOMTokenList","THIS","tokens","tokenMap","maxLength","reindex","preop","error","args","rSpace","SyntaxError","code","join","idx","token","l","ignore","t","force","UNDEF","o","defineProperty","enumerable","addProp","tokenList","gibberishProperty","DEFINE_GETTER","visage","mirror","reflections","childNodes","_R","e","polyfill","CLASS_","REL","addCSSRule","styleSheets","selector","index","insertRule","addRule","supportsPassive","opts","passive","browserInfo","navigator","userAgent","localStorageAccess","tnsStorage","removeItem","doc","win","KEYS","ENTER","SPACE","PAGEUP","PAGEDOWN","END","HOME","LEFT","UP","RIGHT","DOWN","CALC","body","result","val","vals","width","offsetWidth","SUBPIXEL","child2","parent","child1","cssText","cloneNode","supported","offsetTop","CSSMQ","div","className","position","getComputedStyle","currentStyle","TRANSFORM","TRANSITIONDURATION","TRANSITIONDELAY","ANIMATIONDURATION","ANIMATIONDELAY","TRANSITIONEND","ANIMATIONEND","options","checkOption","breakpoints","responsiveItems","bp","responsive","getOption","view","vpOuter","floor","carousel","nested","len","max","slideCount","getSlideMarginLeft","slideCountNew","getInnerWrapperStyles","edgePaddingTem","gutterTem","fixedWidthTem","str","horizontal","dir","getContainerWidth","itemsTem","getSlideWidthStyle","dividend","importantStr","getSlideGutterStyle","onResize","event","clearTimeout","resizeTimer","outerWrapper","clientWidth","resizeTasks","events","info","breakpointZoneTem","breakpointZone","indexTem","items","freezeTem","freeze","vpInner","innerWrapper","getBreakpointZone","fixedWidth","arrowKeysTem","arrowKeys","autoHeightTem","autoHeight","edgePadding","gutter","slideBy","indexMax","indexAdjust","checkIndex","cloneCount","speed","doContainerTransform","height","docmentKeydownEvent","hasControls","controlsTem","controls","controlsTextTem","controlsText","controlsContainer","prevButton","innerHTML","nextButton","hasNav","navTem","nav","navContainer","updateNavVisibility","hasTouch","touchTem","touch","container","touchEvents","hasMouseDrag","mouseDragTem","mouseDrag","dragEvents","hasAutoplay","autoplayTem","autoplay","autoplayHoverPauseTem","autoplayHoverPause","autoplayResetOnVisibilityTem","autoplayResetOnVisibility","autoplayTextTem","autoplayText","autoplayTimeout","autoplayButton","animating","startAction","stopAction","hoverEvents","visibilityEvent","html","substring","removeRule","slideId","doTransform","indexCached","lazyLoad","updateSlideStatus","updateControlsStatus","updateNavStatus","msMaxTouchPoints","setSnapInterval","getSlideOffsetTops","updateContentWrapperHeight","checkFixedWidthSlideCount","runAutoHeight","breakpointZoneAdjust","slideItems","classList","contains","margin","add","mouseoverPause","autoplayHoverStopped","mouseoutRestart","lazyload","querySelectorAll","eve","stopPropagation","src","images","updateInnerWrapperHeight","checkImagesLoaded","maxHeight","heights","offsetHeight","apply","setDurations","slideOffsetTops","topFirst","getBoundingClientRect","top","msScrollSnapPointsX","aria-hidden","tabindex","navCurrentIndex","navClicked","navCurrentIndexCached","navPrev","navItems","navCurrent","aria-selected","isButton","nodeName","isAriaDisabled","disEnableElement","disabled","loop","prevDisabled","nextDisabled","disablePrev","indexMin","disableNext","rewind","prevIsButton","nextIsButton","getContainerTransformValue","denominator","transformAttr","transformPrefix","transformPostfix","animateSlide","number","classOut","classIn","isOut","left","animateDelay","slideItemsOut","distance","transformCore","visibleNavIndexes","render","checkIndexBeforeTransform","running","onTransitionEnd","strTrans","animateOut","animateNormal","propertyName","goTo","targetIndex","onControlsClick","absIndex","indexGap","parseInt","isNaN","absTargetIndex","shouldRender","srcElement","onNavClick","navIndex","updateAutoplayButton","action","txt","data-action","autoplayHtmlStrings","resetActionTimer","pauseActionTimer","clearInterval","autoplayTimer","setInterval","autoplayDirection","toggleAnimation","onVisibilityChange","autoplayResetVisibilityState","onDocumentKeydown","keyCode","onControlsKeydown","setFocus","focus","onNavKeydown","getNavIndex","num","curElement","activeElement","current","ie10Scroll","scrollLeft","getTarget","isTouchEvent","type","preventDefaultBehavior","preventDefault","returnValue","onTouchOrMouseStart","ev","changedTouches","startX","clientX","startY","clientY","translateInit","parseFloat","onTouchOrMouseMove","disX","disY","axis","isDragEvent","touchedOrDraged","percentageX","onTouchOrMouseEnd","indexMoved","ceil","moved","click","preventClick","getVisibleNavIndex","temIndex","absIndexMin","unshift","visibleNavIndexesCached","ind","mode","autoplayButtonOutput","onInit","children","resTem","res","animateIn","containerParent","map","sort","a","b","concat","arr","hasRightDeadZone","containerIdCached","containerClassCached","slideItemIdCached","slideItemClassCached","controlsEvents","keydown","navEvents","mouseover","mouseout","visibilitychange","touchstart","touchmove","touchend","touchcancel","mousedown","mousemove","mouseup","mouseleave","insertBefore","dataOuter","dataInner","dataContainer","fragmentBefore","createDocumentFragment","fragmentAfter","cloneFirst","firstChild","cloneLast","cssFontSize","fontSize","slide","marginLeft","innerWrapperStr","containerStr","slideStr","itemsBP","fixedWidthBP","edgePaddingBP","gutterBP","scroll","aria-label","data-nav","aria-controls","navHtml","insertAdjacentHTML","data-controls","resize","leftEdge","rightEdge","gt","containerRightEdge","getInfo","destroy"],"mappings":"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","file":"../dist/tiny-slider.js","sourcesContent":["var tns = (function (){\n// keys\nif (!Object.keys) {\n Object.keys = function (object) {\n var keys = [];\n for (var name in object) {\n if (Object.prototype.hasOwnProperty.call(object, name)) {\n keys.push(name);\n }\n }\n return keys;\n };\n}\n\n// ChildNode.remove\n(function () {\n \"use strict\";\n\n if(!(\"remove\" in Element.prototype)){\n Element.prototype.remove = function(){\n if(this.parentNode) {\n this.parentNode.removeChild(this);\n }\n };\n }\n})();\n\n/** DOMTokenList polyfill */\n(function(){\n\t\"use strict\";\n\t\n\t/*<*/\n\tvar UNDEF,\n\tWIN = window,\n\tDOC = document,\n\tOBJ = Object,\n\tNULL = null,\n\tTRUE = true,\n\tFALSE = false,\n\t/*>*/\n\t\n\t/** Munge the hell out of our string literals. Saves a tonne of space after compression. */\n\tSPACE = \" \",\n\tELEMENT = \"Element\",\n\tCREATE_ELEMENT = \"create\"+ELEMENT,\n\tDOM_TOKEN_LIST = \"DOMTokenList\",\n\tDEFINE_GETTER = \"__defineGetter__\",\n\tDEFINE_PROPERTY = \"defineProperty\",\n\tCLASS_ = \"class\",\n\tLIST = \"List\",\n\tCLASS_LIST = CLASS_+LIST,\n\tREL = \"rel\",\n\tREL_LIST = REL+LIST,\n\tDIV = \"div\",\n\tLENGTH = \"length\",\n\tCONTAINS = \"contains\",\n\tAPPLY = \"apply\",\n\tHTML_ = \"HTML\",\n\tMETHODS = (\"item \"+CONTAINS+\" add remove toggle toString toLocaleString\").split(SPACE),\n\tADD = METHODS[2],\n\tREMOVE = METHODS[3],\n\tTOGGLE = METHODS[4],\n\tPROTOTYPE = \"prototype\",\n\t\n\t\n\t\n\t/** Ascertain browser support for Object.defineProperty */\n\tdpSupport = DEFINE_PROPERTY in OBJ || DEFINE_GETTER in OBJ[ PROTOTYPE ] || NULL,\n\t\n\t\n\t/** Wrapper for Object.defineProperty that falls back to using the legacy __defineGetter__ method if available. */\n\tdefineGetter = function(object, name, fn, configurable){\n\t\tif(OBJ[ DEFINE_PROPERTY ])\n\t\t\tOBJ[ DEFINE_PROPERTY ](object, name, {\n\t\t\t\tconfigurable: FALSE === dpSupport ? TRUE : !!configurable,\n\t\t\t\tget: fn\n\t\t\t});\n\t\t\n\t\telse object[ DEFINE_GETTER ](name, fn);\n\t},\n\t\n\t\n\t\n\t\n\t/** DOMTokenList interface replacement */\n\tDOMTokenList = function(el, prop){\n\t\tvar THIS = this,\n\t\t\n\t\t/** Private variables */\n\t\ttokens = [],\n\t\ttokenMap = {},\n\t\tlength = 0,\n\t\tmaxLength = 0,\n\t\t\n\t\t\n\t\treindex = function(){\n\t\t\t\n\t\t\t/** Define getter functions for array-like access to the tokenList's contents. */\n\t\t\tif(length >= maxLength)\n\t\t\t\tfor(; maxLength < length; ++maxLength) (function(i){\n\t\t\t\t\t\n\t\t\t\t\tdefineGetter(THIS, i, function(){\n\t\t\t\t\t\tpreop();\n\t\t\t\t\t\treturn tokens[i];\n\t\t\t\t\t}, FALSE);\n\t\t\t\t\t\n\t\t\t\t})(maxLength);\n\t\t},\n\t\t\n\t\t\n\t\t\n\t\t/** Helper function called at the start of each class method. Internal use only. */\n\t\tpreop = function(){\n\t\t\tvar error, i,\n\t\t\targs = arguments,\n\t\t\trSpace = /\\s+/;\n\t\t\t\n\t\t\t/** Validate the token/s passed to an instance method, if any. */\n\t\t\tif(args[ LENGTH ])\n\t\t\t\tfor(i = 0; i < args[ LENGTH ]; ++i)\n\t\t\t\t\tif(rSpace.test(args[i])){\n\t\t\t\t\t\terror = new SyntaxError('String \"' + args[i] + '\" ' + CONTAINS + ' an invalid character');\n\t\t\t\t\t\terror.code = 5;\n\t\t\t\t\t\terror.name = \"InvalidCharacterError\";\n\t\t\t\t\t\tthrow error;\n\t\t\t\t\t}\n\t\t\t\n\t\t\t\n\t\t\t/** Split the new value apart by whitespace*/\n\t\t\ttokens = (\"\" + el[prop]).replace(/^\\s+|\\s+$/g, \"\").split(rSpace);\n\t\t\t\n\t\t\t/** Avoid treating blank strings as single-item token lists */\n\t\t\tif(\"\" === tokens[0]) tokens = [];\n\t\t\t\n\t\t\t/** Repopulate the internal token lists */\n\t\t\ttokenMap = {};\n\t\t\tfor(i = 0; i < tokens[ LENGTH ]; ++i)\n\t\t\t\ttokenMap[tokens[i]] = TRUE;\n\t\t\tlength = tokens[ LENGTH ];\n\t\t\treindex();\n\t\t};\n\t\t\n\t\t\n\t\t\n\t\t/** Populate our internal token list if the targeted attribute of the subject element isn't empty. */\n\t\tpreop();\n\t\t\n\t\t\n\t\t\n\t\t/** Return the number of tokens in the underlying string. Read-only. */\n\t\tdefineGetter(THIS, LENGTH, function(){\n\t\t\tpreop();\n\t\t\treturn length;\n\t\t});\n\t\t\n\t\t\n\t\t/** Override the default toString/toLocaleString methods to return a space-delimited list of tokens when typecast. */\n\t\tTHIS[ METHODS[6] /** toLocaleString */ ] =\n\t\tTHIS[ METHODS[5] /** toString */ ] = function(){\n\t\t\tpreop();\n\t\t\treturn tokens.join(SPACE);\n\t\t};\n\t\t\n\t\t\n\t\t\n\t\t/** Return an item in the list by its index (or undefined if the number is greater than or equal to the length of the list) */\n\t\tTHIS.item = function(idx){\n\t\t\tpreop();\n\t\t\treturn tokens[idx];\n\t\t};\n\t\t\n\t\t\n\t\t/** Return TRUE if the underlying string contains `token`; otherwise, FALSE. */\n\t\tTHIS[ CONTAINS ] = function(token){\n\t\t\tpreop();\n\t\t\treturn !!tokenMap[token];\n\t\t};\n\t\t\n\t\t\n\t\t\n\t\t/** Add one or more tokens to the underlying string. */\n\t\tTHIS[ADD] = function(){\n\t\t\tpreop[APPLY](THIS, args = arguments);\n\n\t\t\tfor(var args, token, i = 0, l = args[ LENGTH ]; i < l; ++i){\n\t\t\t\ttoken = args[i];\n\t\t\t\tif(!tokenMap[token]){\n\t\t\t\t\ttokens.push(token);\n\t\t\t\t\ttokenMap[token] = TRUE;\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\t/** Update the targeted attribute of the attached element if the token list's changed. */\n\t\t\tif(length !== tokens[ LENGTH ]){\n\t\t\t\tlength = tokens[ LENGTH ] >>> 0;\n\t\t\t\tel[prop] = tokens.join(SPACE);\n\t\t\t\treindex();\n\t\t\t}\n\t\t};\n\t\t\n\t\t\n\t\t\n\t\t/** Remove one or more tokens from the underlying string. */\n\t\tTHIS[ REMOVE ] = function(){\n\t\t\tpreop[APPLY](THIS, args = arguments);\n\t\t\t\n\t\t\t/** Build a hash of token names to compare against when recollecting our token list. */\n\t\t\tfor(var args, ignore = {}, i = 0, t = []; i < args[ LENGTH ]; ++i){\n\t\t\t\tignore[args[i]] = TRUE;\n\t\t\t\tdelete tokenMap[args[i]];\n\t\t\t}\n\t\t\t\n\t\t\t/** Run through our tokens list and reassign only those that aren't defined in the hash declared above. */\n\t\t\tfor(i = 0; i < tokens[ LENGTH ]; ++i)\n\t\t\t\tif(!ignore[tokens[i]]) t.push(tokens[i]);\n\t\t\t\n\t\t\ttokens = t;\n\t\t\tlength = t[ LENGTH ] >>> 0;\n\t\t\t\n\t\t\t/** Update the targeted attribute of the attached element. */\n\t\t\tel[prop] = tokens.join(SPACE);\n\t\t\treindex();\n\t\t};\n\t\t\n\t\t\n\t\t\n\t\t/** Add or remove a token depending on whether it's already contained within the token list. */\n\t\tTHIS[TOGGLE] = function(token, force){\n\t\t\tpreop[APPLY](THIS, [token]);\n\t\t\t\n\t\t\t/** Token state's being forced. */\n\t\t\tif(UNDEF !== force){\n\t\t\t\tif(force) { THIS[ADD](token); return TRUE; }\n\t\t\t\telse { THIS[REMOVE](token); return FALSE; }\n\t\t\t}\n\t\t\t\n\t\t\t/** Token already exists in tokenList. Remove it, and return FALSE. */\n\t\t\tif(tokenMap[token]){\n\t\t\t\tTHIS[ REMOVE ](token);\n\t\t\t\treturn FALSE;\n\t\t\t}\n\t\t\t\n\t\t\t/** Otherwise, add the token and return TRUE. */\n\t\t\tTHIS[ADD](token);\n\t\t\treturn TRUE;\n\t\t};\n\t\t\n\t\t\n\t\t/** Mark our newly-assigned methods as non-enumerable. */\n\t\t(function(o, defineProperty){\n\t\t\tif(defineProperty)\n\t\t\t\tfor(var i = 0; i < 7; ++i)\n\t\t\t\t\tdefineProperty(o, METHODS[i], {enumerable: FALSE});\n\t\t}(THIS, OBJ[ DEFINE_PROPERTY ]));\n\t\t\n\t\treturn THIS;\n\t},\n\t\n\t\n\t\n\t/** Polyfills a property with a DOMTokenList */\n\taddProp = function(o, name, attr){\n\t\t\n\t\tdefineGetter(o[PROTOTYPE], name, function(){\n\t\t\tvar tokenList,\n\t\t\tTHIS = this,\n\t\t\t\n\t\t\t/** Prevent this from firing twice for some reason. What the hell, IE. */\n\t\t\tgibberishProperty = DEFINE_GETTER + DEFINE_PROPERTY + name;\n\t\t\tif(THIS[gibberishProperty]) return tokenList;\n\t\t\tTHIS[gibberishProperty] = TRUE;\n\t\t\t\n\t\t\t\n\t\t\t/**\n\t\t\t * IE8 can't define properties on native JavaScript objects, so we'll use a dumb hack instead.\n\t\t\t *\n\t\t\t * What this is doing is creating a dummy element (\"reflection\") inside a detached phantom node (\"mirror\")\n\t\t\t * that serves as the target of Object.defineProperty instead. While we could simply use the subject HTML\n\t\t\t * element instead, this would conflict with element types which use indexed properties (such as forms and\n\t\t\t * select lists).\n\t\t\t */\n\t\t\tif(FALSE === dpSupport){\n\t\t\t\t\n\t\t\t\tvar visage,\n\t\t\t\tmirror = addProp.mirror = addProp.mirror || DOC[ CREATE_ELEMENT ](DIV),\n\t\t\t\treflections = mirror.childNodes,\n\t\t\t\t\n\t\t\t\t/** Iterator variables */\n\t\t\t\tl = reflections[ LENGTH ],\n\t\t\t\ti = 0;\n\t\t\t\t\n\t\t\t\tfor(; i < l; ++i)\n\t\t\t\t\tif(reflections[i]._R === THIS){\n\t\t\t\t\t\tvisage = reflections[i];\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\n\t\t\t\t/** Couldn't find an element's reflection inside the mirror. Materialise one. */\n\t\t\t\tvisage || (visage = mirror.appendChild(DOC[ CREATE_ELEMENT ](DIV)));\n\t\t\t\t\n\t\t\t\ttokenList = DOMTokenList.call(visage, THIS, attr);\n\t\t\t}\n\t\t\t\n\t\t\telse tokenList = new DOMTokenList(THIS, attr);\n\t\t\t\n\t\t\t\n\t\t\tdefineGetter(THIS, name, function(){ return tokenList; });\n\t\t\tdelete THIS[gibberishProperty];\n\t\t\t\n\t\t\treturn tokenList;\n\t\t}, TRUE);\n\t},\n\n\t/** Variables used for patching native methods that're partially implemented (IE doesn't support adding/removing multiple tokens, for instance). */\n\ttestList,\n\tnativeAdd,\n\tnativeRemove;\n\t\n\t\n\t\n\t\n\t/** No discernible DOMTokenList support whatsoever. Time to remedy that. */\n\tif(!WIN[ DOM_TOKEN_LIST ]){\n\t\t\n\t\t/** Ensure the browser allows Object.defineProperty to be used on native JavaScript objects. */\n\t\tif(dpSupport)\n\t\t\ttry{ defineGetter({}, \"support\"); }\n\t\t\tcatch(e){ dpSupport = FALSE; }\n\t\t\n\t\t\n\t\tDOMTokenList.polyfill = TRUE;\n\t\tWIN[ DOM_TOKEN_LIST ] = DOMTokenList;\n\t\t\n\t\taddProp( WIN[ ELEMENT ], CLASS_LIST, CLASS_ + \"Name\"); /* Element.classList */\n\t\taddProp( WIN[ HTML_+ \"Link\" + ELEMENT ], REL_LIST, REL); /* HTMLLinkElement.relList */\n\t\taddProp( WIN[ HTML_+ \"Anchor\" + ELEMENT ], REL_LIST, REL); /* HTMLAnchorElement.relList */\n\t\taddProp( WIN[ HTML_+ \"Area\" + ELEMENT ], REL_LIST, REL); /* HTMLAreaElement.relList */\n\t}\n\t\n\t\n\t/**\n\t * Possible support, but let's check for bugs.\n\t *\n\t * Where arbitrary values are needed for performing a test, previous variables\n\t * are recycled to save space in the minified file.\n\t */\n\telse{\n\t\ttestList = DOC[ CREATE_ELEMENT ](DIV)[CLASS_LIST];\n\t\t\n\t\t/** We'll replace a \"string constant\" to hold a reference to DOMTokenList.prototype (filesize optimisation, yaddah-yaddah...) */\n\t\tPROTOTYPE = WIN[DOM_TOKEN_LIST][PROTOTYPE];\n\t\t\n\t\t\n\t\t/** Check if we can pass multiple arguments to add/remove. To save space, we'll just recycle a previous array of strings. */\n\t\ttestList[ADD][APPLY](testList, METHODS);\n\t\tif(2 > testList[LENGTH]){\n\t\t\tnativeAdd = PROTOTYPE[ADD];\n\t\t\tnativeRemove = PROTOTYPE[REMOVE];\n\t\t\t\n\t\t\tPROTOTYPE[ADD] = function(){\n\t\t\t\tfor(var i = 0, args = arguments; i < args[LENGTH]; ++i)\n\t\t\t\t\tnativeAdd.call(this, args[i]);\n\t\t\t};\n\t\t\t\n\t\t\tPROTOTYPE[REMOVE] = function(){\n\t\t\t\tfor(var i = 0, args = arguments; i < args[LENGTH]; ++i)\n\t\t\t\t\tnativeRemove.call(this, args[i]);\n\t\t\t};\n\t\t}\n\t\t\n\t\t\n\t\t/** Check if the \"force\" option of .toggle is supported. */\n\t\tif(testList[TOGGLE](LIST, FALSE))\n\t\t\tPROTOTYPE[TOGGLE] = function(token, force){\n\t\t\t\tvar THIS = this;\n\t\t\t\tTHIS[(force = UNDEF === force ? !THIS[CONTAINS](token) : force) ? ADD : REMOVE](token);\n\t\t\t\treturn !!force;\n\t\t\t};\n\t}\n}());\n\nfunction extend() {\n var obj, name, copy,\n target = arguments[0] || {},\n i = 1,\n length = arguments.length;\n\n for (; i < length; i++) {\n if ((obj = arguments[i]) !== null) {\n for (name in obj) {\n copy = obj[name];\n\n if (target === copy) {\n continue;\n } else if (copy !== undefined) {\n target[name] = copy;\n }\n }\n }\n }\n return target;\n}\n\nfunction checkStorageValue (value) {\n return ['true', 'false'].indexOf(value) >= 0 ? JSON.parse(value) : value;\n}\n\nfunction setLocalStorage(key, value, access) {\n if (access) { localStorage.setItem(key, value); }\n return value;\n}\n\nfunction getSlideId() {\n var id = window.tnsId;\n window.tnsId = !id ? 1 : id + 1;\n \n return 'tns' + window.tnsId;\n}\n\n// get css-calc \n// @return - false | calc | -webkit-calc | -moz-calc\n// @usage - var calc = getCalc(); \nfunction calc() {\n var doc = document, \n body = doc.body,\n el = doc.createElement('div'), \n result = false;\n body.appendChild(el);\n try {\n var vals = ['calc(10px)', '-moz-calc(10px)', '-webkit-calc(10px)'], val;\n for (var i = 0; i < 3; i++) {\n val = vals[i];\n el.style.width = val;\n if (el.offsetWidth === 10) { \n result = val.replace('(10px)', ''); \n break;\n }\n }\n } catch (e) {}\n body.removeChild(el);\n\n return result;\n}\n\n// get subpixel support value\n// @return - boolean\nfunction subpixelLayout() {\n var doc = document,\n body = doc.body,\n parent = doc.createElement('div'),\n child1 = doc.createElement('div'),\n child2;\n parent.style.cssText = 'width: 10px';\n child1.style.cssText = 'float: left; width: 5.5px; height: 10px;';\n child2 = child1.cloneNode(true);\n\n parent.appendChild(child1);\n parent.appendChild(child2);\n body.appendChild(parent);\n\n var supported = child1.offsetTop !== child2.offsetTop;\n body.removeChild(parent);\n\n return supported;\n}\n\nfunction mediaquerySupport () {\n var doc = document,\n body = doc.body,\n div = doc.createElement('div');\n\n div.className = 'tns-mq-test';\n body.appendChild(div);\n\n var position = (window.getComputedStyle) ? window.getComputedStyle(div).position : div.currentStyle['position'];\n body.removeChild(div);\n\n return position === \"absolute\";\n}\n\n// create and append style sheet\nfunction createStyleSheet (media) {\n // Create the