merchantDetail.js 9.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262
  1. $(function(){
  2. pushHistory();
  3. window.addEventListener("popstate", function(e) {
  4. location.href=base+"/mobile/index.jsp";
  5. }, false);
  6. });
  7. function pushHistory() {
  8. var state = {
  9. title: "title",
  10. url: "#"
  11. };
  12. if(window.history.length==1){
  13. window.history.pushState(state, "title", "#");
  14. }
  15. }
  16. var id=mobile.getUrlVars("id");
  17. var merchant;
  18. mui.init();
  19. /**
  20. *初始化、添加监听
  21. */
  22. mui.ready(function(){
  23. getMerchant();
  24. $(".productList").on("tap", "li", function(){
  25. if ($(this).attr("product_type")=="10"){
  26. location.href=base+"/mobile/productDetail.jsp?id="+$(this).attr("data-id");
  27. }else if ($(this).attr("product_type")=="20"){
  28. location.href=base+"/mobile/cutProductDetail.jsp?id="+$(this).attr("data-id");
  29. }
  30. });
  31. $(".icon-dianhua").on("tap",function(){
  32. location.href = 'tel:'+merchant.mobile;
  33. });
  34. $(".address").on("tap",function(){
  35. var locations=bd09togcj02(merchant.longitude,merchant.latitude);
  36. wx.ready(function(){
  37. wx.openLocation({
  38. latitude: locations[1], // 纬度,浮点数,范围为90 ~ -90
  39. longitude: locations[0], // 经度,浮点数,范围为180 ~ -180。
  40. name: merchant.merchant_name, // 位置名
  41. address: merchant.address, // 地址详情说明
  42. scale: 28, // 地图缩放级别,整形值,范围从1~28。默认为最大
  43. infoUrl: '' // 在查看位置界面底部显示的超链接,可点击跳转
  44. });
  45. });
  46. });
  47. });
  48. //获取商品信息
  49. function getMerchant(){
  50. mobile.ajaxPost(base+"/merchant/getMerchant",{id:id},function(json){
  51. merchant = json.data;
  52. console.info(json);
  53. share.title=merchant.merchant_name;
  54. //share.link=location.href;
  55. share.imgUrl=imgUrl+merchant.merchant_img1;
  56. $("title").html(merchant.merchant_name);
  57. $(".visit_num").html(merchant.visit_num);
  58. $(".merchant_name").html(merchant.merchant_name);
  59. $(".open_time").html("营业时间:"+merchant.start_hour+"-"+merchant.end_hour);
  60. $(".address").html('<span class="mui-icon iconfont icon-shouhuodizhi fs15 color2"></span>'+ merchant.address);
  61. if(merchant.has_wifi=="1"){
  62. $(".has_wifi").removeClass("mui-hidden");
  63. }
  64. if(merchant.has_park=="1"){
  65. $(".has_park").removeClass("mui-hidden");
  66. }
  67. if(merchant.has_ac=="1"){
  68. $(".has_ac").removeClass("mui-hidden");
  69. }
  70. if(merchant.has_box=="1"){
  71. $(".has_box").removeClass("mui-hidden");
  72. }
  73. if(merchant.has_wifi=="0"&&merchant.has_park=="0"&&merchant.has_ac=="0"&&merchant.has_box=="0"){
  74. $(".has_wifi").parents("ul").remove();
  75. }
  76. var arr = [];
  77. if(merchant.merchant_img1){
  78. arr.push(merchant.merchant_img1);
  79. }
  80. if(merchant.merchant_img2){
  81. arr.push(merchant.merchant_img2);
  82. }
  83. if(merchant.merchant_img3){
  84. arr.push(merchant.merchant_img3);
  85. }
  86. if(merchant.product&&merchant.product.length>0){
  87. var html=[];
  88. jQuery.each(merchant.product,function(id,item){
  89. html.push('<a class="section-item" href="'+base+'/mobile/productDetail.jsp?id='+item.id+'">');
  90. html.push('<div class="image-box">');
  91. html.push('<img class="product-lazy" data-original="'+imgUrl+item.product_main_img+'" style="width: 100%; display: block;">');
  92. html.push('</div>');
  93. html.push('<div class="info-box">');
  94. html.push('<div class="info-title">'+item.product_name+'</div>');
  95. html.push('<div class="items">');
  96. html.push('<div class="product-price item"><em>¥'+item.product_price+'<span class="del-line color3 ml5">'+item.product_old_price+'元</span></em></div>')
  97. html.push('<div class="fs12 color3">关注:'+item.visit_num+'</div>')
  98. html.push('</div></div>');
  99. html.push('</a>');
  100. });
  101. $(".section-list").append(html.join(""));
  102. $("img.product-lazy").lazyload({
  103. threshold : 200,
  104. effect: "fadeIn",
  105. placeholder: base+'/static/mobile/image/100.gif',
  106. skip_invisible : false
  107. });
  108. }else{
  109. $(".productList").remove();
  110. }
  111. if (merchant.cut&&merchant.cut.length>0){
  112. var html = [];
  113. $.each(merchant.cut,function (id,item) {
  114. html.push('<div class="swiper-slide">');
  115. html.push('<a href="'+base+'/mobile/cutProductDetail.jsp?id='+item.id+'">');
  116. html.push('<img src="'+imgUrl+item.product_img_1+'">');
  117. html.push('<p class="color1 fs16 productName mb10 mt5 mui-ellipsis-2">'+item.product_name+'</p>');
  118. html.push('<div class="mui-table">');
  119. html.push('<div class="mui-table-cell mui-col-xs-6 product-price">');
  120. html.push('<span class="fs15"></span><span class="fs24">¥'+item.product_price+'</span>');
  121. html.push('<span class="fs13 del-line color3 ml5">'+item.product_old_price+'元</span>');
  122. html.push('</div>');
  123. html.push('<div class="mui-table-cell mui-col-xs-6 mui-text-right saleNum">');
  124. html.push('<span class="color2 fs12 pr5">关注:<span>'+item.visit_num+'</span> </span>');
  125. html.push('<span class="mui-btn mui-btn-primary">立即参与</span>');
  126. html.push('</div>');
  127. html.push('</div>');
  128. html.push('</a>');
  129. html.push('</div>');
  130. });
  131. $("#cut .swiper-wrapper").html(html.join(""));
  132. swiper();
  133. }else{
  134. $("#cut").hide();
  135. }
  136. initSlider(arr);
  137. if(merchant.merchant_detail){
  138. $("#detail").html(merchant.merchant_detail);
  139. $("img.lazy").lazyload({
  140. threshold : 50,
  141. effect: "fadeIn",
  142. placeholder: base+'/static/mobile/image/500.gif',
  143. skip_invisible : false
  144. });
  145. }else{
  146. $("#detail").html('<span class="fs14 color2">暂无信息</span>');
  147. }
  148. $('.mui-content').removeClass('mui-hidden');
  149. $('.mui-bar-tab').removeClass('mui-hidden');
  150. });
  151. }
  152. function initSlider(arr){
  153. $("#slider .mui-slider-group").append('<div class="mui-slider-item mui-slider-item-duplicate">'+
  154. '<a href="#">'+
  155. '<img class="slider-lazy" data-original="'+imgUrl+arr[arr.length-1]+'" >'+
  156. '</a>'+
  157. '</div>');
  158. if(arr.length>1){//数量大于1定时滚动
  159. for(var i=0;i<arr.length;i++){
  160. $("#slider .mui-slider-group").append('<div class="mui-slider-item">'+
  161. '<a href="#">'+
  162. '<img class="slider-lazy" data-original="'+imgUrl+arr[i]+'" >'+
  163. '</a>'+
  164. '</div>');
  165. if(i==0){
  166. $("#slider .mui-slider-indicator").append('<div class="mui-indicator mui-active"></div>');
  167. }else{
  168. $("#slider .mui-slider-indicator").append('<div class="mui-indicator"></div>');
  169. }
  170. }
  171. }else{//数量等于1
  172. $("#slider .mui-slider-group").append('<div class="mui-slider-item">'+
  173. '<a href="#">'+
  174. '<img class="slider-lazy" data-original="'+imgUrl+arr[0]+'" >'+
  175. '</a>'+
  176. '</div>');
  177. }
  178. $("#slider .mui-slider-group").append('<div class="mui-slider-item mui-slider-item-duplicate">'+
  179. '<a href="#">'+
  180. '<img src="'+imgUrl+arr[0]+'" >'+
  181. '</a>'+
  182. '</div>');
  183. if(arr.length>1){
  184. var slider = mui("#slider");
  185. slider.slider({
  186. interval: 3000
  187. });
  188. }
  189. $("img.slider-lazy").lazyload({
  190. threshold : 200,
  191. placeholder: base+'/static/mobile/image/500.gif',
  192. skip_invisible : false
  193. });
  194. }
  195. function getCollect(){
  196. mobile.ajaxPost(base+"/userCollect/getById",{productId:id},function(json){
  197. if(json.data){
  198. data.collect="1";
  199. $("#collect .mui-icon").removeClass('mui-icon-star');
  200. $("#collect .mui-icon").addClass('mui-icon-star-filled price-color');
  201. $("#collect .mui-tab-label").html('已收藏');
  202. }
  203. },"");
  204. }
  205. //获取评价
  206. function getComment(){
  207. mobile.ajaxPost(base+"/userOrderComment/getList",{productId:id},function(json){
  208. if(json.success){
  209. if(json.data&&json.data.length>0){
  210. var html=[];
  211. $.each(json.data,function(id,item){
  212. if(!item.nickname){
  213. item.nickname="匿名用户";
  214. }
  215. if(!item.headimgurl){
  216. item.headimgurl=base+"static/mobile/image/avatar.png";
  217. }
  218. html.push('<li class="mui-table-view-cell mui-media">');
  219. html.push('<div class="mui-media-body">');
  220. html.push('<img class="comment-avatar mr5" src="'+item.headimgurl+'">');
  221. html.push('<div class="mui-inline lh24 mr5">'+item.nickname+'</div>');
  222. html.push('<div class="icons mui-inline lh24">');
  223. for(var i=0;i<parseInt(item.comment_rank);i++){
  224. html.push('<i class="mui-icon mui-icon-star-filled"></i>');
  225. }
  226. for(var i=0;i<5-parseInt(item.comment_rank);i++){
  227. html.push('<i class="mui-icon mui-icon-star"></i>');
  228. }
  229. html.push('</div>');
  230. html.push('<p class="color1 mb5">'+item.comment_content+'</p>');
  231. html.push('<p class="fs12">'+item.create_time+'</p>');
  232. html.push('</div>');
  233. html.push('</li>');
  234. });
  235. $("#item3 ul").html(html.join(""));
  236. }else{
  237. $("#item3").html('<div class="fs14 color2 pd15 bgcolor1">暂无评价</div>');
  238. }
  239. }else{
  240. layer.open({content: json.msg,time: 3});
  241. }
  242. },"");
  243. }
  244. function checkTime(i){ // 将0-9的数字前面加上0,例1变为01
  245. if(i<10) {
  246. i = "0" + i;
  247. }
  248. return i;
  249. }
  250. function swiper() {
  251. if ($("#cut .swiper-slide").length>1){
  252. var mySwiper2 = new Swiper ('#cut-swiper', {
  253. loop: true,
  254. autoplay: 3000,//可选选项,自动滑动
  255. // 如果需要分页器
  256. pagination: '#cut-pagination',
  257. paginationType : 'fraction',
  258. autoplayDisableOnInteraction : false
  259. });
  260. }
  261. }