var qs = parseQueryString(window.location.href); var coupon_price =''; var discount_price =''; var goods_id =''; var is_coupon =''; var price =''; var itemUrl = ''; var user_id = ''; $().ready(function(){ if(qs.parent_id) { parent_id = qs.parent_id; } if(qs.discount_price) { discount_price = qs.discount_price; } if(qs.goods_id) { goods_id = qs.goods_id; } if(qs.is_coupon) { is_coupon = qs.is_coupon; } if(qs.price) { price = qs.price; } if(qs.itemUrl) { itemUrl = qs.itemUrl; } goodsInfo(goods_id,coupon_price,is_coupon,price,discount_price,itemUrl); }) function goodsInfo(goods_id,coupon_price,is_coupon,price,discount_price,itemUrl){ $.ajax({ type: "post", url: "/api/v2/goods/detail", data:{ goods_id: goods_id , is_coupon : is_coupon, coupon_price : coupon_price, price : price, discount_price:discount_price }, success:function(res){ if(res.errno == "0" && res.rst){ var data = res.rst.data; var detailsHtml = ''; var swiperHtml = ''; var img = data.small_img; var quan = '' if(data.coupon_price == 0){ data.coupon_price = qs.coupon_price; } if(data.is_coupon == 1){ quan += '券 '+ data.coupon_price +'元' } detailsHtml += '
价格 '+ data.price+'
月销 '+ data.volume+'
'+ data.title+'
' img.forEach(function(i,n){ swiperHtml +='' }) } $('.details-wrapper').html(detailsHtml) $('.swiper-wrapper').html(swiperHtml) getTaoKouLing(user_id,goods_id,is_coupon) swiperEvent(); $('.btn').click(function(){ openTaobao(itemUrl) }) } }) } //swiper function swiperEvent () { var mySwiper = new Swiper ('.swiper-container', { autoplay: 3000, loop: true, pagination: '.swiper-pagination', }) } //分享商品页面点击复制淘口令 function getTaoKouLing(user_id,goods_id,is_coupon){ $.ajax({ type: "post", url: "/api/v2/adzoneCreate/h5CopyOfTheNaughtyPassword", headers:{ source : 6000 }, data:{ goods_id: goods_id , is_coupon : is_coupon, user_id : user_id }, success:function(res){ if(res.errno == "0" && res.rst){ var taokouling =res.rst.data; $('#taokouling').text(taokouling); } } }) } //去淘宝 //function toTaoBao(itemUrl){ // $('.btn').click(function(){ // window.location.href = itemUrl // }) //} // 打开淘宝 function openTaobao(itemUrl) { var param = {"taobaoUrl" : itemUrl} param = JSON.stringify(param) try{ if(navigator.userAgent.match(/(iPhone|iPod|iPad);?/i)){ window.webkit.messageHandlers.app_h5_open_taobao_url.postMessage(param); } if(navigator.userAgent.match(/android/i)){ obj4H5.app_h5_open_taobao_url(param); } }catch(e){ //TODO handle the exception copyPassword(); showMsg('淘口令已复制,打开淘宝领取') } } /* to swiper */ function startSwiper(imageCount) { var banner = document.querySelector('.swiper-wrapper'); //轮播图大盒子 var imageBox = banner.querySelector('.swiper-wrapper .swiper-item'); //图片盒子 var pointBox = banner.querySelector('.swiper-wrapper .swiper-point'); //点盒子 var imageCount = imageCount; //页面中用来轮播的图片有5张不同的 var width = banner.offsetWidth; //图片的宽度 var points = pointBox.querySelectorAll('li'); //所有的点 //加过渡 var addTransition = function(){ imageBox.style.transition = "all 0.3s"; imageBox.style.webkitTransition = "all 0.3s";/*做兼容*/ }; //清除过渡 var removeTransition = function(){ imageBox.style.transition = "none"; imageBox.style.webkitTransition = "none"; } //定位 var setTranslateX = function(translateX){ var translateX = translateX + 375; imageBox.style.transform = "translateX("+translateX+"px)"; imageBox.style.webkitTransform = "translateX("+translateX+"px)"; } //自动轮播 定时器 无缝衔接 动画结束瞬间定位 var index = 1; var timer = setInterval(function(){ index++ ; //自动轮播到下一张 //改变定位 动画的形式去改变 transition transform translate addTransition(); //加过渡动画 // console.log(index, -index * width); setTranslateX(-index * width); //定位 }, 3000); //等过渡结束之后来做无缝衔接 my.transitionEnd(imageBox, function(){ //处理事件结束后的业务逻辑 if(index > imageCount ){ index = 1; }else if(index <= 0){ index = imageCount; } removeTransition(); //清除过渡 setTranslateX(-index * width); //定位 setPoint(); //设置底部显示当前图片对应的圆角 }); //改变当前样式 当前图片的索引 var setPoint = function(){ //清除上一次的now for(var i = 0 ; i < points.length ; i++){ points[i].className = " "; } //给图片对应的点加上样式 points[index-1].className = "now"; } /* 手指滑动的时候让轮播图滑动 touch事件 记录坐标轴的改变 改变轮播图的定位(位移css3) 当滑动的距离不超过一定的距离的时候 需要吸附回去 过渡的形式去做 当滑动超过了一定的距离 需要 跳到 下一张或者上一张 (滑动的方向) 一定的距离(屏幕的三分之一) */ //touch事件 var startX = 0; //记录起始 刚刚触摸的点的位置 x的坐标 var moveX = 0; //滑动的时候x的位置 var distanceX = 0; //滑动的距离 var isMove = false; //是否滑动过 imageBox.addEventListener('touchstart', function(e){ clearInterval(timer); //清除定时器 startX = e.touches[0].clientX; //记录起始X }); imageBox.addEventListener('touchmove',function(e){ moveX = e.touches[0].clientX; //滑动时候的X distanceX = moveX - startX; //计算移动的距离 //计算当前定位 -index*width+distanceX removeTransition(); //清除过渡 setTranslateX(-index * width + distanceX); //实时的定位 isMove = true; //证明滑动过 }); //在模拟器上模拟的滑动会有问题 丢失的情况 最后在模拟器的时候用window imageBox.addEventListener('touchend', function(e){ // 滑动超过 1/3 即为滑动有效,否则即为无效,则吸附回去 if(isMove && Math.abs(distanceX) > width/3){ //5.当滑动超过了一定的距离 需要 跳到 下一张或者上一张 (滑动的方向)*/ if(distanceX > 0){ //上一张 index --; } else{ //下一张 index ++; } } addTransition(); //加过渡动画 setTranslateX(-index * width); //定位 if(index > imageCount ){ index = 1; }else if(index <= 0){ index = imageCount; } setPoint(); //重置参数 startX = 0; moveX = 0; distanceX = 0; isMove = false; //加定时器 clearInterval(timer); //严谨 再清除一次定时器 timer= setInterval(function(){ index++ ; //自动轮播到下一张 addTransition(); //加过渡动画 setTranslateX(-index * width); //定位 },3000); }); } //获取地址栏参数 function parseQueryString(url) { var urlObj = {}; var reg = /([^?=&]+)=([^?=&]+)/g; url.replace(reg, ($0, $1, $2) => { urlObj[$1] = decodeURIComponent($2); }) return urlObj; } //复制淘口令 function copyPassword() { var data=document.getElementById("taokouling").innerHTML; copy_2.innerHTML = data; copy_1.value = data; if (navigator.userAgent.match(/(iPhone|iPod|iPad);?/i)) { //区分iPhone设备 window.getSelection().removeAllRanges();//这段代码必须放在前面否则无效 var Url2=document.getElementById("copy_2");//要复制文字的节点 var range = document.createRange(); // 选中需要复制的节点 range.selectNode(Url2); // 执行选中元素 window.getSelection().addRange(range); // 执行 copy 操作 var successful = document.execCommand('copy'); // 移除选中的元素 window.getSelection().removeAllRanges(); }else{ var Url2=document.getElementById("copy_1");//要复制文字的节点 Url2.select(); // 选择对象 document.execCommand("Copy"); // 执行浏览器复制命令 } } /*copy to clipboard*/ //gxl var copyName = document.getElementsByClassName("copyName"); var copyNameArr = Array.prototype.slice.call(copyName); copyNameArr.forEach(function (item, index) { item.addEventListener('click', function () { toCopy("copyName_1","copyName_2",function () { window.location.href="http://a.app.qq.com/o/simple.jsp?pkgname=com.kuxuan.coupon" }); }, false) }) /** * [showMsg 提示各种错误信息,3s后消失] */ function showMsg(msg) { var msgBox = document.getElementsByClassName('alert-info')[0]; msgBox.getElementsByTagName("p")[0].innerHTML=msg; msgBox.style.display="block"; setTimeout(function() { msgBox.style.display="none"; }, 2000); } //返回上一页 function goBack(){ window.history.go(-1); }