window.foton = window.foton || {}; (function(){ function pk(){ this.baseUrl = window.location.origin; this.init(); } p = pk.prototype; p.init = function(){ this.bindEvent(); this.listenTopBar(); this.qjzs(); this.jctj(); this.yysj(); // 模块动画 var wow = new WOW({ boxClass: 'wow', animateClass: 'animated', offset: 100, mobile: false, live: true }); wow.init(); } p.bindEvent = function(){ const _this = this; // 预约试驾 $(".submit").click(e=>{ var flag = true; var msg = ""; if(!$("#name").val()) { msg = "姓名不能为空!"; flag = false; alertMsg(msg); return false; } p.checkPhoneNum($("#realPhone")).then( result => { if(!result){ }else{ $(".yysj select").each(function() { var select = $(this).find("option:selected"); if(select.val() == -1) { flag = false; msg = "请选择" + select.html(); return false; } }); if(!flag) { alertMsg(msg); return false; } if (flag) { var params = { BrandId: $("#brand").val(), SeriesId: $("#carSeries").val(), ProvinceId: $("#province").val(), CityId: $("#city").val(), DealerId: $("#Dealer").val(), Name: $("#name").val(), Phone: $("#realPhone").val(), Remark: $("#Remark").val() }; _this.getData('post', _this.baseUrl+"/tunland/clue/PostLeads", params).then(resp => { if(resp.status == 0){ alertMsg("提交成功"); } }) p.LzInfo(); } else { alertMsg(msg); } } }) }) //关闭弹窗按钮 $(".modalfooter button").on("click", function() { $(".alertbox").hide() }); } // 导航栏吸附 p.listenTopBar = function(){ const _this = this; // 监听页面滚动,联动导航栏 _this.listenScroll = true; $(document).scroll(e=>{ let bannerH = $("#banner").height() - 71; let top = $(document).scrollTop(); if(top >= bannerH){ $("#navContainer").addClass("fixed"); }else{ $("#navContainer").removeClass("fixed"); } }) // 锚点 let ary = ["cpld", "qjzs", "jctj", "cspz"]; $("#navContainer .nav .n").click(e=>{ let index = $(e.currentTarget).index(); let section = $(`.${ary[index]}`); let top = section.offset().top - 80 - 75; window.scrollTo({ top: top, behavior: "smooth" }) _this.listenScroll = false; setTimeout(e=>{ _this.listenScroll = true; },1500) $("#navContainer .nav .n").removeClass("active"); $(e.currentTarget).addClass("active"); $("#navContainer .nav .line").css("left", 106*index) }) // 锚点控制导航 let cpld = $(".cpld").offset().top; let qjzs = $(".qjzs").offset().top; let jctj = $(".jctj").offset().top; let cspz = $(".cspz").offset().top; window.onscroll = function(){ console.log(1111, _this.listenScroll); if(_this.listenScroll === false){ return} let top = window.scrollY + 1000; let index = 0; if(top <= qjzs){ index = 0; }else if(top <= jctj){ index = 1; }else if(top <= cspz){ index = 2; }else{ index = 3; } $("#navContainer .nav .n").removeClass("active"); $("#navContainer .nav .n").eq(index).addClass("active"); $("#navContainer .nav .line").css("left", 106*index); } } // 全景展示滚动 p.qjzs = function(){ new Swiper(".qjzs .swiper-container", { prevButton:'.qjzs .wg', nextButton:'.qjzs .ns', onTouchStart: function(swiper){ // alert(swiper.activeIndex); $("#container .qjzs .nav .line").toggleClass("right"); } }); } // 精彩图集 p.jctj = function(){ var galleryTop = new Swiper('.swiper1', { spaceBetween: 10, onSlideChangeStart: function(swiper){ let index = swiper.activeIndex; let len = $(".swiper1 img").length; if(index == 0){ galleryThumbs.slideTo(0); }else if(index == len-1){ galleryThumbs.slideTo(3); } } }); var galleryThumbs = new Swiper('.swiper2', { spaceBetween: 24, slidesPerView: 'auto', touchRatio: 0.2, freeMode: true, watchSlidesProgress: false, onClick: function(swiper){ let index = swiper.clickedIndex; galleryTop.slideTo(index); } }); } // 预约试驾 p.yysj = function(){ const _this = this; setProvince(); setBrand(); function setProvince(){ _this.getData('get', _this.baseUrl+ "/tunland/clue/getProvince").then(resp => { if(resp.status == 1 ){ return; } $("#province").empty(); resp.data.unshift({ID:-1, FNAME:"省份"}); $.each(resp.data, function(i, val) { var $option = $(''); $("#province").append($option); }); }) $("#province").bind("change", function() { var provinceid = $("#province option:selected").attr("value"); setCity(provinceid); }); } function setCity(provinceid){ _this.getData('get', _this.baseUrl+ "/tunland/clue/getCityOfPronvince", {pId: provinceid}).then(resp => { if(resp.status == 1 ){ return; } $("#city").empty(); resp.data.unshift({dmpCityId:-1, cityName:"市"}); $.each(resp.data, function(i, val) { var $option = $(''); $("#city").append($option); }); }) $("#city").unbind("change"); $("#city").bind("change", function() { _this.getData('get', _this.baseUrl+"/tunland/clue/getDealer", {cityId:$("#city").val()}) }); } function setBrand(){ _this.getData('get', _this.baseUrl+ "/tunland/clue/getBrand").then(resp => { if(resp.status == 1 ){ return; } $("#brand").empty(); resp.data.unshift({ID:-1, NAME:"品牌"}); $.each(resp.data, function(i, val) { if (val.ID == '504f7428-439a-4f87-9540-1ad1f334962e' || val.ID == -1) { var $option = $(''); $("#brand").append($option); } }); }) $("#brand").bind("change", function() { setCarSeries($("#brand").val()); }); } function setCarSeries(brandId){ $("#carSeries").empty(); _this.getData('get', _this.baseUrl+ "/tunland/clue/getSeries", {brandId}).then( resp => { if(resp.status == 1 ){ return; } resp.data.unshift({ID:-1, NAME:"选择车型"}); $.each(resp.data, function(i, val) { var $option = $(''); $("#carSeries").append($option); }); // if(!isNaN(isbind)) { // $("#carSeries").val(isbind); // } }) } } p.checkPhoneNum = function(vInput, enable) { //手机号 var reg = /^1(3|4|5|6|8|7)\d{9}$/; var flag = false; var phoneVal = vInput.val(); if(phoneVal == "" || phoneVal == "手机号码") { alertMsg("手机号不能为空"); } else if(!reg.test(phoneVal)) { alertMsg("请输入正确的手机号"); } else { //验证手机号码是否已经注册过 if(enable) { var urlJson = { a: "Verifymtel", tel: phoneVal } return new Promise(resolve => { this.getData('get', _this.baseUrl+ "/tunland/clue/getProvince", urlJson).then(resp => { if(resp.statcode == 0) { resolve(true); }else{ resolve(false); } }) }) } else { return Promise.resolve(true); } } return Promise.resolve(flag); } p.LzInfo = function () { const _this = this; $.ajax({ type: "POST", async: false, url: _this.baseUrl+"/tunland/dmp/dmpLzInfo", data: { brandId: $("#brand").val(), seriesId: $("#carSeries").val(), provinceId: $("#province").val(), cityId: $("#city").val(), name: $("#name").val(), tel: $("#realPhone").val() }, dataType: "json" }); } p.getData = function(method="GET", url, data={}){ return new Promise(resolve=>{ $.ajax({ url:url, method: method, data: method.toUpperCase()=="GET" ? data : JSON.stringify(data), dataType:'json', contentType:"application/json;charset=utf-8", success:e=>{ resolve(e) } }) }) } function alertMsg(content) { $('.alertbox').show(); $('.alertbox').css("z-index", "999"); $(".modalbody").html(content); }; window.foton.pk = pk; })()