PluginProbe
Qi Blocks / 1.1.1
Qi Blocks v1.1.1
1.5.3 1.5.2 1.5.1 trunk 1.0 1.0.1 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.0.7 1.0.8 1.0.9 1.1 1.1.1 1.1.2 1.2 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6 1.2.7 All 45 releases
qi-blocks / assets / dist / counter-script.js

counter-script.js in Qi Blocks 1.1.1, at assets/dist/counter-script.js

1 lines 1.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 (()=>{"use strict";document.addEventListener("DOMContentLoaded",(function(){t.init()}));const t={interval:[],init:function(){this.holder=document.querySelectorAll(".qi-block-counter"),this.holder.length&&[...this.holder].map((e=>{t.initItem(e)}))},getRealCurrentItem:function(t){return"string"==typeof t&&""!==t&&(t=qiBlocksEditor.qodefGetCurrentBlockElement.get(t)),t},initItem:function(e,i){const n=i?e:"";if(!(e=t.getRealCurrentItem(e)))return;const r=e.querySelector(".qodef-m-digit"),a=t.generateOptions(e);("object"!=typeof qiBlocksEditor?qiBlocks:qiBlocksEditor).qodefIsInViewport.check(e,(function(){t.counterScript(r,a,i,n)}))},generateOptions:function(t){let e={};return e.start=void 0!==t.getAttribute("data-start-digit")&&""!==t.getAttribute("data-start-digit")?parseInt(t.getAttribute("data-start-digit")):0,e.end=void 0!==t.getAttribute("data-end-digit")&&""!==t.getAttribute("data-end-digit")?parseInt(t.getAttribute("data-end-digit")):null,e.step=void 0!==t.getAttribute("data-step-digit")&&""!==t.getAttribute("data-step-digit")?parseInt(t.getAttribute("data-step-digit")):1,e.delay=void 0!==t.getAttribute("data-step-delay")&&""!==t.getAttribute("data-step-delay")?parseInt(t.getAttribute("data-step-delay"),10):100,e.txt=void 0!==t.getAttribute("data-digit-label")&&""!==t.getAttribute("data-digit-label")?String(t.getAttribute("data-digit-label")):"",e},counterScript:function(e,i,n,r){let a=Object.assign({start:0,end:null,step:1,delay:50,txt:""},i||{}),d=a.start,o=a.end;e.innerHTML=d+a.txt,n&&r&&clearInterval(t.interval[r]);const l=t.interval[r]=setInterval((function(){null!==o&&d>=o||(d+=a.step,d>=o&&(d=o,clearInterval(r?t.interval[r]:l)),e.innerHTML=d+a.txt)}),a.delay)}}})();