From dfcb57e4722a864bec1f7608a29aadb830418751 Mon Sep 17 00:00:00 2001 From: yama-dev Date: Fri, 13 Sep 2019 22:40:52 +0900 Subject: [PATCH 1/6] update vertion text. --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 7b4cbb4..9c2ee12 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "js-scroll-effect-module", - "version": "0.6.1", + "version": "0.7.0", "description": "Add effect at scroll.", "keywords": [ "scroll", From 8df355aebad215ba7cca765740b3475337680a2e Mon Sep 17 00:00:00 2001 From: yama-dev Date: Fri, 13 Sep 2019 22:42:40 +0900 Subject: [PATCH 2/6] update npm package. --- package.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 9c2ee12..98ddee8 100644 --- a/package.json +++ b/package.json @@ -50,9 +50,6 @@ "webpack": "^4.34.0", "webpack-cli": "^3.3.4" }, - "dependencies": { - "@yama-dev/js-dom": "0.0.6" - }, "eslintConfig": { "env": { "browser": true, @@ -89,5 +86,8 @@ "no-console": "warn", "no-unused-vars": "warn" } + }, + "dependencies": { + "@yama-dev/js-dom": "^0.1.0" } } From 208da7d1785875d8a2fd30585756f28943814a40 Mon Sep 17 00:00:00 2001 From: yama-dev Date: Fri, 13 Sep 2019 22:44:09 +0900 Subject: [PATCH 3/6] adjust build settings. --- src/js-scroll-effect-module.js | 5 ++--- webpack.config.js | 8 ++++---- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/src/js-scroll-effect-module.js b/src/js-scroll-effect-module.js index cba1095..e9b16d8 100644 --- a/src/js-scroll-effect-module.js +++ b/src/js-scroll-effect-module.js @@ -1,8 +1,7 @@ -import JS_DOM from '@yama-dev/js-dom'; -const dom = new JS_DOM(); +import * as DOM from '@yama-dev/js-dom/core/'; -export default class SCROLL_EFFECT_MODULE { +export class SCROLL_EFFECT_MODULE { constructor(options={}){ diff --git a/webpack.config.js b/webpack.config.js index e37756e..764196d 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -27,12 +27,12 @@ const babelPlugin = [ const config = { mode: env || 'development', - entry: './src/js-scroll-effect-module.js', + entry: { + 'js-scroll-effect-module': './src/js-scroll-effect-module.js', + }, output: { path: `${__dirname}/dist`, - filename: 'js-scroll-effect-module.js', - library: 'SCROLL_EFFECT_MODULE', - libraryExport: 'default', + filename: '[name].js', libraryTarget: 'umd' }, module: { From d32f0e19fafa6d933dcbaa3cbad0cb1209a32407 Mon Sep 17 00:00:00 2001 From: yama-dev Date: Fri, 13 Sep 2019 22:47:21 +0900 Subject: [PATCH 4/6] adjust script js-dom. --- src/js-scroll-effect-module.js | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/js-scroll-effect-module.js b/src/js-scroll-effect-module.js index e9b16d8..aec8f00 100644 --- a/src/js-scroll-effect-module.js +++ b/src/js-scroll-effect-module.js @@ -76,8 +76,8 @@ export class SCROLL_EFFECT_MODULE { } CacheDom(){ - this.$elemItem = dom.selectDom(this.Config.elem); - this.$elemItemFirst = dom.selectDom(this.Config.firstElem); + this.$elemItem = DOM.selectDom(this.Config.elem); + this.$elemItemFirst = DOM.selectDom(this.Config.firstElem); } CacheDomSize(){ @@ -87,7 +87,7 @@ export class SCROLL_EFFECT_MODULE { SetDom(){ this.State.PosList = []; this.State.NumScrolltop = window.pageYOffset; - let _elem = dom.selectDom(this.$elemItem); + let _elem = DOM.selectDom(this.$elemItem); if(_elem){ _elem.map((el)=>{ this.State.PosList.push( el.getBoundingClientRect().top + this.State.NumScrolltop); @@ -109,7 +109,7 @@ export class SCROLL_EFFECT_MODULE { Clear(){ this.State.PosList.map((el, i)=>{ - dom.removeClass(this.$elemItem[i], this.Config.addClassNameActive); + DOM.removeClass(this.$elemItem[i], this.Config.addClassNameActive); }); } @@ -190,7 +190,7 @@ export class SCROLL_EFFECT_MODULE { // for Initial display setTimeout(() => { - if(this.Config.addClassNameActive) dom.addClass(this.$elemItemFirst[loopCount], this.Config.addClassNameActive); + if(this.Config.addClassNameActive) DOM.addClass(this.$elemItemFirst[loopCount], this.Config.addClassNameActive); loopCount++; @@ -220,8 +220,8 @@ export class SCROLL_EFFECT_MODULE { ActionChange(){ this.State.PosListFix.map((el)=>{ - if(!dom.hasClass(this.$elemItem[el], this.Config.addClassNameActive)){ - if(this.Config.addClassNameActive) dom.addClass(this.$elemItem[el], this.Config.addClassNameActive); + if(!DOM.hasClass(this.$elemItem[el], this.Config.addClassNameActive)){ + if(this.Config.addClassNameActive) DOM.addClass(this.$elemItem[el], this.Config.addClassNameActive); // Callback function. if(this.Config.on.In && typeof(this.Config.on.In) === 'function') this.Config.on.In(this.$elemItem[el], el, this.State.NumScrolltop); @@ -230,8 +230,8 @@ export class SCROLL_EFFECT_MODULE { if(this.Config.displayReverse){ this.State.PosListNoneFix.map((el)=>{ - if(dom.hasClass(this.$elemItem[el], this.Config.addClassNameActive)){ - dom.removeClass(this.$elemItem[el], this.Config.addClassNameActive); + if(DOM.hasClass(this.$elemItem[el], this.Config.addClassNameActive)){ + DOM.removeClass(this.$elemItem[el], this.Config.addClassNameActive); // Callback function. if(this.Config.on.Out && typeof(this.Config.on.Out) === 'function') this.Config.on.Out(this.$elemItem[el], el, this.State.NumScrolltop); From 1dc6101a04522460aca57fac4bfcff3f16e579b6 Mon Sep 17 00:00:00 2001 From: yama-dev Date: Fri, 13 Sep 2019 22:47:42 +0900 Subject: [PATCH 5/6] adjust build settings. --- webpack.config.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/webpack.config.js b/webpack.config.js index 764196d..26239ce 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -1,7 +1,6 @@ const pkg = require('./package.json'); -const comment = `JS SCROLL EFFECT MODULE (JavaScript Library) - ${pkg.name} +const comment = `@yama-dev/${pkg.name} Version ${pkg.version} Repository ${pkg.repository.url} Copyright ${pkg.author} @@ -45,7 +44,7 @@ const config = { }, { test: /\.js$/, - exclude: /node_modules/, + exclude: /node_modules[//\/](?!(@yama\-dev)\/).*/, use: { loader: 'babel-loader', options: { From 0d8b9cfed4ba4cb133b39b9b3ab616ebdc824b89 Mon Sep 17 00:00:00 2001 From: yama-dev Date: Fri, 13 Sep 2019 22:48:02 +0900 Subject: [PATCH 6/6] build js-scroll-effect-module.js --- dist/js-scroll-effect-module.js | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/dist/js-scroll-effect-module.js b/dist/js-scroll-effect-module.js index cd4be96..e690ba6 100644 --- a/dist/js-scroll-effect-module.js +++ b/dist/js-scroll-effect-module.js @@ -1,17 +1,8 @@ /*! - * JS SCROLL EFFECT MODULE (JavaScript Library) - * js-scroll-effect-module - * Version 0.6.1 + * @yama-dev/js-scroll-effect-module + * Version 0.7.0 * Repository https://github.com/yama-dev/js-scroll-effect-module * Copyright yama-dev * Licensed MIT */ -!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.SCROLL_EFFECT_MODULE=e():t.SCROLL_EFFECT_MODULE=e()}(window,function(){return function(t){var e={};function n(i){if(e[i])return e[i].exports;var o=e[i]={i:i,l:!1,exports:{}};return t[i].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=t,n.c=e,n.d=function(t,e,i){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:i})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)n.d(i,o,function(e){return t[e]}.bind(null,o));return i},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=1)}([function(t,e,n){window,t.exports=function(t){var e={};function n(i){if(e[i])return e[i].exports;var o=e[i]={i:i,l:!1,exports:{}};return t[i].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=t,n.c=e,n.d=function(t,e,i){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:i})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)n.d(i,o,function(e){return t[e]}.bind(null,o));return i},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=0)}([function(t,e,n){"use strict";n.r(e);var i=function(){function t(t,e){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:{};!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.Version="0.6.1",this.State={NumScrolltopPre:window.pageYOffset,NumScrolltop:window.pageYOffset,NumAcceleration:0,PosList:[],PosListFixPre:[],PosListFix:[],PosListNoneFix:[]};this.Config=o({elem:null,firstElem:null,displayRatio:.8,displayReverse:!1,firstDelay:10,firstDelaySteps:100,addClassNameActive:"is-active",acceleration:!1,on:{Scroll:null,Change:null,In:null,Out:null,Acceleration:null}},n),"complete"==document.readyState||"interactive"==document.readyState?(this.CacheDom(),this.BindEvent()):document.addEventListener("DOMContentLoaded",function(){e.CacheDom(),e.BindEvent()})}var e,n,i;return e=t,(n=[{key:"BindEvent",value:function(){var t=this;setTimeout(function(){t.Update(),t.StoreElementStateAtPosList("load")},this.Config.firstDelay),window.addEventListener("resize",function(){t.Update()}),window.addEventListener("scroll",function(){t.StoreElementStateAtPosList("scroll")})}},{key:"CacheDom",value:function(){this.$elemItem=r.selectDom(this.Config.elem),this.$elemItemFirst=r.selectDom(this.Config.firstElem)}},{key:"CacheDomSize",value:function(){this.NumWindowHeight=window.innerHeight}},{key:"SetDom",value:function(){var t=this;this.State.PosList=[],this.State.NumScrolltop=window.pageYOffset;var e=r.selectDom(this.$elemItem);e&&e.map(function(e){t.State.PosList.push(e.getBoundingClientRect().top+t.State.NumScrolltop)})}},{key:"Update",value:function(){this.CacheDom(),this.CacheDomSize(),this.SetDom()}},{key:"Refresh",value:function(){this.Update(),this.Clear(),this.ActionChange()}},{key:"Clear",value:function(){var t=this;this.State.PosList.map(function(e,n){r.removeClass(t.$elemItem[n],t.Config.addClassNameActive)})}},{key:"StoreElementStateAtPosList",value:function(t){var e=this;this.State.PosListFix=[],this.State.PosListNoneFix=[],this.State.NumScrolltop=window.pageYOffset,this.State.PosList.map(function(t,n){e.State.NumScrolltop+e.NumWindowHeight*e.Config.displayRatio>t?e.State.PosListFix.push(n):e.State.PosListNoneFix.push(n)}),this.Config.acceleration&&(Math.abs(this.State.NumAcceleration)<=Math.abs(this.State.NumScrolltop-this.State.NumScrolltopPre)&&(this.State.NumAcceleration=this.State.NumScrolltop-this.State.NumScrolltopPre,this.State.NumAcceleration>=100&&(this.State.NumAcceleration=100),this.State.NumAcceleration<=-100&&(this.State.NumAcceleration=-100),clearInterval(this.Interval),this.CheckAcceleration()),this.Config.on.Acceleration&&"function"==typeof this.Config.on.Acceleration&&this.Config.on.Acceleration(this.State.NumAcceleration)),"load"===t?this.ActionChangeFirst():"scroll"===t&&this.State.PosListFixPre.length!==this.State.PosListFix.length&&this.ActionChange(),this.Config.on.Scroll&&"function"==typeof this.Config.on.Scroll&&this.Config.on.Scroll(this.State.NumScrolltop),this.State.NumScrolltopPre=this.State.NumScrolltop,this.State.PosListFixPre=this.State.PosListFix}},{key:"CheckAcceleration",value:function(){var t=this;this.Interval=setInterval(function(){var e=Math.pow(1.02,Math.abs(t.State.NumAcceleration))-.6;t.State.NumAcceleration>0?t.State.NumAcceleration=t.State.NumAcceleration-e:t.State.NumAcceleration<0&&(t.State.NumAcceleration=t.State.NumAcceleration+e),t.State.NumAcceleration=Math.ceil(100*t.State.NumAcceleration)/100,t.State.NumAcceleration>-.8&&t.State.NumAcceleration<.8&&(t.State.NumAcceleration=0,clearInterval(t.Interval)),t.Config.on.Acceleration&&"function"==typeof t.Config.on.Acceleration&&t.Config.on.Acceleration(t.State.NumAcceleration)},10)}},{key:"ActionChangeFirst",value:function(){var t=this,e=0;this.$elemItemFirst?function n(){setTimeout(function(){t.Config.addClassNameActive&&r.addClass(t.$elemItemFirst[e],t.Config.addClassNameActive),++e0&&void 0!==arguments[0]?arguments[0]:{};!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.Version="0.7.0",this.State={NumScrolltopPre:window.pageYOffset,NumScrolltop:window.pageYOffset,NumAcceleration:0,PosList:[],PosListFixPre:[],PosListFix:[],PosListNoneFix:[]};this.Config=l({elem:null,firstElem:null,displayRatio:.8,displayReverse:!1,firstDelay:10,firstDelaySteps:100,addClassNameActive:"is-active",acceleration:!1,on:{Scroll:null,Change:null,In:null,Out:null,Acceleration:null}},n),"complete"==document.readyState||"interactive"==document.readyState?(this.CacheDom(),this.BindEvent()):document.addEventListener("DOMContentLoaded",(function(){e.CacheDom(),e.BindEvent()}))}var e,n,i;return e=t,(n=[{key:"BindEvent",value:function(){var t=this;setTimeout((function(){t.Update(),t.StoreElementStateAtPosList("load")}),this.Config.firstDelay),window.addEventListener("resize",(function(){t.Update()})),window.addEventListener("scroll",(function(){t.StoreElementStateAtPosList("scroll")}))}},{key:"CacheDom",value:function(){this.$elemItem=o(this.Config.elem),this.$elemItemFirst=o(this.Config.firstElem)}},{key:"CacheDomSize",value:function(){this.NumWindowHeight=window.innerHeight}},{key:"SetDom",value:function(){var t=this;this.State.PosList=[],this.State.NumScrolltop=window.pageYOffset;var e=o(this.$elemItem);e&&e.map((function(e){t.State.PosList.push(e.getBoundingClientRect().top+t.State.NumScrolltop)}))}},{key:"Update",value:function(){this.CacheDom(),this.CacheDomSize(),this.SetDom()}},{key:"Refresh",value:function(){this.Update(),this.Clear(),this.ActionChange()}},{key:"Clear",value:function(){var t=this;this.State.PosList.map((function(e,n){s(t.$elemItem[n],t.Config.addClassNameActive)}))}},{key:"StoreElementStateAtPosList",value:function(t){var e=this;this.State.PosListFix=[],this.State.PosListNoneFix=[],this.State.NumScrolltop=window.pageYOffset,this.State.PosList.map((function(t,n){e.State.NumScrolltop+e.NumWindowHeight*e.Config.displayRatio>t?e.State.PosListFix.push(n):e.State.PosListNoneFix.push(n)})),this.Config.acceleration&&(Math.abs(this.State.NumAcceleration)<=Math.abs(this.State.NumScrolltop-this.State.NumScrolltopPre)&&(this.State.NumAcceleration=this.State.NumScrolltop-this.State.NumScrolltopPre,this.State.NumAcceleration>=100&&(this.State.NumAcceleration=100),this.State.NumAcceleration<=-100&&(this.State.NumAcceleration=-100),clearInterval(this.Interval),this.CheckAcceleration()),this.Config.on.Acceleration&&"function"==typeof this.Config.on.Acceleration&&this.Config.on.Acceleration(this.State.NumAcceleration)),"load"===t?this.ActionChangeFirst():"scroll"===t&&this.State.PosListFixPre.length!==this.State.PosListFix.length&&this.ActionChange(),this.Config.on.Scroll&&"function"==typeof this.Config.on.Scroll&&this.Config.on.Scroll(this.State.NumScrolltop),this.State.NumScrolltopPre=this.State.NumScrolltop,this.State.PosListFixPre=this.State.PosListFix}},{key:"CheckAcceleration",value:function(){var t=this;this.Interval=setInterval((function(){var e=Math.pow(1.02,Math.abs(t.State.NumAcceleration))-.6;t.State.NumAcceleration>0?t.State.NumAcceleration=t.State.NumAcceleration-e:t.State.NumAcceleration<0&&(t.State.NumAcceleration=t.State.NumAcceleration+e),t.State.NumAcceleration=Math.ceil(100*t.State.NumAcceleration)/100,t.State.NumAcceleration>-.8&&t.State.NumAcceleration<.8&&(t.State.NumAcceleration=0,clearInterval(t.Interval)),t.Config.on.Acceleration&&"function"==typeof t.Config.on.Acceleration&&t.Config.on.Acceleration(t.State.NumAcceleration)}),10)}},{key:"ActionChangeFirst",value:function(){var t=this,e=0;this.$elemItemFirst?function n(){setTimeout((function(){t.Config.addClassNameActive&&r(t.$elemItemFirst[e],t.Config.addClassNameActive),++e