![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /proc/self/cwd/wp-content/plugins/bdthemes-element-pack/assets/js/modules/ |
/** * Start reading progress widget script */ (function($, elementor) { 'use strict'; var readingProgressWidget = function($scope, $) { var $readingProgress = $scope.find('.bdt-reading-progress'); if (!$readingProgress.length) { return; } var $settings = $readingProgress.data('settings'); jQuery(document).ready(function(){ // jQuery($readingProgress).progressScroll([$settings.progress_bg, $settings.scroll_bg]); var settings = { borderSize: 10, mainBgColor: '#E6F4F7', lightBorderColor: '#A2ECFB', darkBorderColor: '#39B4CC' }; var colorBg = $settings.progress_bg; //'red' var progressColor = $settings.scroll_bg; //'green'; var innerHeight, offsetHeight, netHeight, self = this, container = $($readingProgress), borderContainer = 'bdt-reading-progress-border', circleContainer = 'bdt-reading-progress-circle', textContainer = 'bdt-reading-progress-text'; var getHeight = function () { innerHeight = window.innerHeight; offsetHeight = document.body.offsetHeight; netHeight = offsetHeight - innerHeight; }; var addEvent = function () { var e = document.createEvent('Event'); e.initEvent('scroll', false, false); window.dispatchEvent(e); }; var updateProgress = function (percnt) { var per = Math.round(100 * percnt); var deg = per * 360 / 100; if (deg <= 180) { $('.' + borderContainer, container).css('background-image', 'linear-gradient(' + (90 + deg) + 'deg, transparent 50%, ' + colorBg + ' 50%),linear-gradient(90deg, ' + colorBg + ' 50%, transparent 50%)'); } else { $('.' + borderContainer, container).css('background-image', 'linear-gradient(' + (deg - 90) + 'deg, transparent 50%, ' + progressColor + ' 50%),linear-gradient(90deg, ' + colorBg + ' 50%, transparent 50%)'); } $('.' + textContainer, container).text(per + '%'); }; var prepare = function () { //$(container).addClass("bdt-reading-progress"); $(container).html("<div class='" + borderContainer + "'><div class='" + circleContainer + "'><span class='" + textContainer + "'></span></div></div>"); $('.' + borderContainer, container).css({ 'background-color': progressColor, 'background-image': 'linear-gradient(91deg, transparent 50%,' + settings.lightBorderColor + '50%), linear-gradient(90deg,' + settings.lightBorderColor + '50%, transparent 50%' }); $('.' + circleContainer, container).css({ 'width': settings.width - settings.borderSize, 'height': settings.height - settings.borderSize }); }; var init = function () { prepare(); $(window).on('scroll', function () { var getOffset = window.pageYOffset || document.documentElement.scrollTop, per = Math.max(0, Math.min(1, getOffset / netHeight)); updateProgress(per); }); $(window).on('resize', function () { getHeight(); addEvent(); }); $(window).on('load', function () { getHeight(); addEvent(); }); }; init(); }); }; // start progress with cursor var readingProgressCursorSkin = function($scope, $) { var $readingProgress = $scope.find('.bdt-progress-with-cursor'); if (!$readingProgress.length) { return; } document.getElementsByTagName('body')[0].addEventListener('mousemove', function(n) { t.style.left = n.clientX + 'px'; t.style.top = n.clientY + 'px'; e.style.left = n.clientX + 'px'; e.style.top = n.clientY + 'px'; i.style.left = n.clientX + 'px'; i.style.top = n.clientY + 'px'; }); var t = document.querySelector('.bdt-cursor'), e = document.querySelector('.bdt-cursor2'), i = document.querySelector('.bdt-cursor3'); function n(t) { e.classList.add('hover'), i.classList.add('hover'); } function s(t) { e.classList.remove('hover'), i.classList.remove('hover'); } s(); for (var r = document.querySelectorAll('.hover-target'), a = r.length - 1; a >= 0; a--) { o(r[a]); } function o(t) { t.addEventListener('mouseover', n); t.addEventListener('mouseout', s); } $(document).ready(function() { //Scroll indicator var progressPath = document.querySelector('.bdt-progress-wrap path'); var pathLength = progressPath.getTotalLength(); progressPath.style.transition = progressPath.style.WebkitTransition = 'none'; progressPath.style.strokeDasharray = pathLength + ' ' + pathLength; progressPath.style.strokeDashoffset = pathLength; progressPath.getBoundingClientRect(); progressPath.style.transition = progressPath.style.WebkitTransition = 'stroke-dashoffset 10ms linear'; var updateProgress = function() { var scroll = $(window).scrollTop(); var height = $(document).height() - $(window).height(); var progress = pathLength - (scroll * pathLength / height); progressPath.style.strokeDashoffset = progress; }; updateProgress(); jQuery(window).on('scroll', updateProgress); }); }; // end progress with cursor // start progress horizontal var readingProgressHorizontalSkin = function($scope, $) { var $readingProgress = $scope.find('.bdt-horizontal-progress'); if (!$readingProgress.length) { return; } $('#bdt-progress').progress({ size: '3px', wapperBg: '#eee', innerBg: '#DA4453' }); }; // end progress horizontal // start progress back to top var readingProgressBackToTopSkin = function($scope, $) { var $readingProgress = $scope.find('.bdt-progress-with-top'); if (!$readingProgress.length) { return; } var progressPath = document.querySelector('.bdt-progress-wrap path'); var pathLength = progressPath.getTotalLength(); progressPath.style.transition = progressPath.style.WebkitTransition = 'none'; progressPath.style.strokeDasharray = pathLength + ' ' + pathLength; progressPath.style.strokeDashoffset = pathLength; progressPath.getBoundingClientRect(); progressPath.style.transition = progressPath.style.WebkitTransition = 'stroke-dashoffset 10ms linear'; var updateProgress = function() { var scroll = jQuery(window).scrollTop(); var height = jQuery(document).height() - jQuery(window).height(); var progress = pathLength - (scroll * pathLength / height); progressPath.style.strokeDashoffset = progress; }; updateProgress(); jQuery(window).on('scroll', updateProgress); var offset = 50; var duration = 550; jQuery(window).on('scroll', function() { if (jQuery(this).scrollTop() > offset) { jQuery('.bdt-progress-wrap').addClass('active-progress'); } else { jQuery('.bdt-progress-wrap').removeClass('active-progress'); } }); jQuery('.bdt-progress-wrap').on('click', function(event) { event.preventDefault(); jQuery('html, body').animate({ scrollTop: 0 }, duration); return false; }); }; // end progress back to top jQuery(window).on('elementor/frontend/init', function() { elementorFrontend.hooks.addAction('frontend/element_ready/bdt-reading-progress.default', readingProgressWidget); elementorFrontend.hooks.addAction('frontend/element_ready/bdt-reading-progress.bdt-progress-with-cursor', readingProgressCursorSkin); elementorFrontend.hooks.addAction('frontend/element_ready/bdt-reading-progress.bdt-horizontal-progress', readingProgressHorizontalSkin); elementorFrontend.hooks.addAction('frontend/element_ready/bdt-reading-progress.bdt-back-to-top-with-progress', readingProgressBackToTopSkin); }); }(jQuery, window.elementorFrontend)); /** * End reading progress widget script */