$(function () { $(".c-nav-menu").click(function () { $(this).hide(); $('.c-nav-close').show(); $('.c-nav-popupBg').show(); $('.c-nav-popup').attr('style', 'right: 0;'); ForbidWindowSliding(true); }); $('.c-nav-close').on('click', function() { $(this).hide(); $('.c-nav-menu').show(); $('.c-nav-popupBg').hide(); $('.c-nav-popup').attr('style', 'right: -100%;'); ForbidWindowSliding(false); }); $('.c-nav-popupBg').on('click', function() { $(this).hide(); $('.c-nav-close').hide(); $('.c-nav-menu').show(); $('.c-nav-popupBg').hide(); $('.c-nav-popup').attr('style', 'right: -100%;'); ForbidWindowSliding(false); }); $('.c-form-select, .c-form-select2').on('click', function() { var display = $('.c-form-select_drop-downList').css('display'); if (display === 'none') { $('.c-form-select_drop-downList').attr('style', ''); $('.c-icon_bottom-arrows').attr('style', ''); } }); $('.c-form-select_drop-downListItem').on('click', function() { $('.c-form-select_drop-downList').attr('style', 'display:none;'); $('.c-icon_bottom-arrows').attr('style', 'transform:rotate(0deg);'); event.stopPropagation(); }); $('.check-box-three').on('click',function(){ // $('.check-box-three').removeAttr('checked'); // $(this).attr('checked',"checked"); }) $('.check-box').on('click',function(){ $('.check-box').removeAttr('checked'); $(this).attr('checked',"checked"); }) $('.nav-left-item').on('click',function(){ $('.nav-left-item').removeClass('nav-left-item-select'); $(this).attr('class',"nav-left-item-select nav-left-item"); // console.log(document.querySelector('.nav-left').scrollLeft); // document.querySelector('.nav-left').scrollLeft = 0 let box_el = document.querySelector('.nav-left'), child_el = document.querySelectorAll('.nav-left-item'), mid_val = Math.ceil(child_el[0].offsetWidth / box_el.offsetWidth); var index = $(this).index(); for(let i = 0; i < child_el.length; i ++){ if(index == i){ box_el.scrollLeft = (i - mid_val) * (child_el[0].offsetWidth + 15); break; } } }) }) /** * @param {object} options * @param {Element} videoEl * @param {Element} playEl * @param {Element} pauseEl * */ function Video(options) { var video_el = options.videoEl, play_el = options.playEl, pause_el = options.pauseEl; try { video_el.onClick = function() { if (!this.paused) { this.pause(); } } video_el.onPlaying = function() { if (play_el) { play_el.style.display = 'none'; } if (pause_el) { pause_el.style.display = ' '; } } video_el.onPause = function() { if (play_el) { play_el.style.display = ' '; } if (pause_el) { pause_el.style.display = 'none'; } } } catch (err) { // console.error(err); throw new Error(err); } } /** * 禁止页面滑动 * @param {boolean} status * */ function ForbidWindowSliding(status) { if (status) { document.body.parentNode.style.overflow = "hidden"; } else { document.body.parentNode.style.overflow = "auto"; } } /** * 获取url参数 * @param {string} name * */ function getQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); var r = window.location.search.substr(1).match(reg); if (r != null) return unescape(r[2]); return null; } //数字自增到某一值动画参数(目标元素,自定义配置) function NumAutoPlusAnimation(targetEle, options) { /*可以自己改造下传入的参数,按照自己的需求和喜好封装该函数*/ //不传配置就把它绑定在相应html元素的data-xxxx属性上吧 options = options || {}; var $this = document.getElementById(targetEle), time = options.time || $this.data('time'), //总时间--毫秒为单位 finalNum = options.num || $this.data('value'), //要显示的真实数值 regulator = options.regulator || 100, //调速器,改变regulator的数值可以调节数字改变的速度 step = finalNum / (time / regulator), /*每30ms增加的数值--*/ count = 0, //计数器 initial = 0; var timer = setInterval(function() { count = count + step; if (count >= finalNum) { clearInterval(timer); count = finalNum; if (typeof options.complete === 'function') { options.complete(); } } //t未发生改变的话就直接返回 //避免调用text函数,提高DOM性能 var t = Math.floor(count); if (t == initial) return; initial = t; $this.innerHTML = initial; }, 30); } //数字自增到某一值动画参数(目标元素,自定义配置) function NumAutoPlusAnimation(targetEle, options) { /*可以自己改造下传入的参数,按照自己的需求和喜好封装该函数*/ //不传配置就把它绑定在相应html元素的data-xxxx属性上吧 options = options || {}; var $this = document.getElementById(targetEle), time = options.time || $this.data('time'), //总时间--毫秒为单位 finalNum = options.num || $this.data('value'), //要显示的真实数值 regulator = options.regulator || 100, //调速器,改变regulator的数值可以调节数字改变的速度 step = finalNum / (time / regulator), /*每30ms增加的数值--*/ count = 0, //计数器 initial = 0; var timer = setInterval(function() { count = count + step; if (count >= finalNum) { clearInterval(timer); count = finalNum; if (typeof options.complete === 'function') { options.complete(); } } //t未发生改变的话就直接返回 //避免调用text函数,提高DOM性能 var t = Math.floor(count); if (t == initial) return; initial = t; $this.innerHTML = initial; }, 30); }