$(function() { getBanner(); getHardCoverList(); /*生成二维码 start */ $("#qrcode").qrcode({ render : "canvas", //设置渲染方式,有table和canvas,使用canvas方式渲染性能相对来说比较好 text : "https://isheji.m.jd.com/jing-list.html", //扫描二维码后显示的内容,可以直接填一个网址,扫描二维码后自动跳向该链接 width : "62", //二维码的宽度 height : "62", //二维码的高度 background : "#ffffff", //二维码的后景色 foreground : "#000000", //二维码的前景色 src: '../img/jd_icon.png' //二维码中间的图片 }); $(window).scroll(function(){ if($(this).scrollTop()>200){ $("#qrcode").closest(".qrcode-wrap").show(); }else{ $("#qrcode").closest(".qrcode-wrap").hide(); } }); /*右侧悬浮 返回顶部*/ $('#toUp').click(function (e) { $(window).scrollTop(0); }) /** 二维码 end**/ }); function init(){ $("[data-src]").lazyload({ data_attribute : "src",threshold:400}); $('.design-list').children().children('li').hover(function() { $(this).children('.more-wrap').find('img').each(function() { var _this = $(this); _this.attr('src', _this.attr('data-src')); }); $(this).addClass('item-hover'); }, function() { $(this).removeClass('item-hover'); }); //排列定位 $('.s-item-pos:odd').each(function() { var top = $(this).next('.l-item').get(0).offsetTop + 290; $(this).css({'top': top, 'left': 305}); $(this).prev('.s-item-pos').css('top', top); }); //轮播 function scrollMore(item, h, s) { item.each(function() { var $in = $(this).find('.in'); if($in.length > s) { var length = $in.length - s; } else { $(this).find('.more-wrap').children('.btn').hide(); } var height = h; $in.mouseover(function() { var _this = $(this); var srcStr = _this.find('img').attr('src').replace("s87x63_", "s295x208_"); $in.parents('.more-wrap').siblings('.p-img').find('.p-pic').attr('src', srcStr); }); $(this).find('.prev-btn').click(function() { var slength = $in.parent('.img-list').css('top').length; var top = $in.parent('.img-list').css('top').substring(0, slength-2); if(top > -(length* height)) { if(!$in.parent('.img-list').is(":animated")){ $in.parent('.img-list').animate({ 'top': (top - height) }, 400); } } }); $(this).find('.next-btn').click(function() { var slength = $in.parent('.img-list').css('top').length; var top = parseInt($in.parent('.img-list').css('top').substring(0, slength-2)); if(top < 0) { if(!$in.parent('.img-list').is(":animated")){ $in.parent('.img-list').animate({ 'top': (top + height) }, 400); } } }); }); } scrollMore($('.s-item'), 73, 4); //scrollMore($('.l-item'), 101, 5); getPrice(); } //获取价格 function getPrice(){ $(".p-price").each(function () { var skuIds = $(this).attr("skuids"); var skuIdsArr = skuIds.split(","); var $docm = $(this).children("em"); if (skuIds && skuIds.length > 0) { $.ajax({ url: '//p.3.cn/prices/mgets?skuIds=' + skuIds + '&area=0&type=1', dataType: 'jsonp', success: function (r) { if (r && r.length > 0) { var priceObj = {}; r.forEach(function(f){ priceObj[f.id]=f.p=="-1.00"?0:parseFloat(f.p); }); var sum = 0; skuIdsArr.forEach(function(f){ sum+=priceObj[f]; }); sum = sum.toFixed(2); if (sum > 0) { $($docm).html(sum); } else { $($docm).html("暂无报价"); } } } }); } }); } function getHardCoverList(){ var parma = { room: $("#input-room").val(), scale: $("#input-scale").val(), hardCoverSize: $("#input-hardCoverSize").val(), collocationSize: $("#input-collocationSize").val(), articleType: $("#input-articleType").val(), space: $("#input-space").val(), acreage: $("#input-acreage").val(), price: $("#input-price").val(), currentPage: $("#input-currentPage").val(), style: $("#input-style").val(), } $.ajax({ type: "post", url: "//homeapi.jd.com/api/jz/getHardCoverListPC.do", cache:false, data:parma, dataType:"jsonp", jsonp:'callback', success:showHardCoverLists }); } //获取banner function getBanner(){ $.ajax({ type: "post", url: "//homeapi.jd.com/api/faner/video/focusPic.do?biz=4&channel=8&ids=361", cache:false, dataType:"jsonp", jsonp:'callback', success:showBanner }); } function showBanner(data){ var htmlStr = '' if(data && data.focusMaps && data.focusMaps.length > 0){ htmlStr = ''; } $("#banner-div").html(htmlStr); } function showHardCoverLists(data){ var htmlStr = ""; if(data.success){ var hardCovers = new Array(); var articles = new Array(); if(data.model && data.model.value && data.model.value.hardCovers){ var hardCoverVOs = data.model.value.hardCovers; for(var i = 0; i < hardCoverVOs.length; i++){ hardCovers.push(new HardCoverVO(hardCoverVOs[i],data.model.imagPathDomain, 288).htmlStr); } } if(data.model && data.model.value && data.model.value.collocations){ var articleVOs = data.model.value.collocations; for(var i = 0; i < articleVOs.length; i++){ articles.push(new ArticleVO(articleVOs[i],data.model.imagPathDomain, 289).htmlStr); } } htmlStr += getUlLiList(hardCovers, articles); showPage(data.page); } $("#design-list-ul").html(htmlStr); init(); } function getUlLiList(hardCovers, articles){ if(hardCovers.length == 0 && articles.length == 0){ return getEmptyList(); } var htmlStr = ''; //只有搭配 if(hardCovers.length == 0){ return getAllValues(articles); } //只有整屋 if(articles.length == 0){ return getAllValues(hardCovers); } //一个整屋 8个搭配, 搭配在右边 if(hardCovers.length > 0){ htmlStr += getShiftValue(hardCovers); htmlStr += getShiftValueByNum(articles, 8); }else{ //整屋不够 htmlStr += getAllValues(articles); return htmlStr; } //一个整屋 8个搭配,搭配在左边 if(hardCovers.length > 0){ htmlStr += getShiftValueByNum(articles, 2); htmlStr += getShiftValue(articles).replace('s-item', 's-item s-item-pos'); htmlStr += getShiftValue(articles).replace('s-item', 's-item s-item-pos'); htmlStr += getShiftValue(hardCovers); htmlStr += getShiftValueByNum(articles, 4); }else{ //整屋不够 htmlStr += getAllValues(articles); return htmlStr; } //一个整屋 8个搭配, 搭配在右边 if(hardCovers.length > 0){ htmlStr += getShiftValue(hardCovers); htmlStr += getShiftValueByNum(articles, 8); }else{ //整屋不够 htmlStr += getAllValues(articles); return htmlStr; } //一个整屋 8个搭配,搭配在左边 if(hardCovers.length > 0){ htmlStr += getShiftValueByNum(articles, 2); htmlStr += getShiftValue(articles).replace('s-item', 's-item s-item-pos'); htmlStr += getShiftValue(articles).replace('s-item', 's-item s-item-pos'); htmlStr += getShiftValue(hardCovers); htmlStr += getShiftValueByNum(articles, 4); }else{ //整屋不够 htmlStr += getAllValues(articles); return htmlStr; } return htmlStr; } function getShiftValueByNum(arrays, num){ var str = ''; while(arrays.length > 0 && num > 0){ str += arrays.shift(); num--; } return str; } function getShiftValue(arrays){ if(arrays.length > 0){ return arrays.shift(); } return ''; } function getAllValues(arrays){ var str = ''; for(var i = 0; i < arrays.length; i++){ str += arrays[i]; } return str; } function showPage(page){ if(page && page.totalPage && page.totalPage > 0){ var htmlStr = ''; var curPage = page.currentPage; var innerNum = 2; var edgeNum = 2; var halfNum = Math.ceil(innerNum / 2); var limit = page.totalPage - innerNum; var startPage = 0; var endPage = Math.min(innerNum, page.totalPage); if(curPage - 1> halfNum){ startPage = Math.max(Math.min(curPage - 1 - halfNum,limit),0); endPage= Math.min(curPage - 1 + halfNum, page.totalPage); } //上一页 if(curPage > 1) { var prePage = curPage - 1; htmlStr += '<上一页'; } else{ htmlStr += '<上一页'; } //左侧显示列表页 if(startPage > 0 && edgeNum > 0){ var end = Math.min(edgeNum, startPage); for(var i = 0; i < end; i++){ var j = i + 1; if(j == curPage){ htmlStr += ''+ j +''; }else{ htmlStr += '' + j + ''; } } } //内部连续页 for(var i = startPage; i < endPage; i++){ var j = i + 1; if(j == curPage){ htmlStr += ''+ j +''; }else{ htmlStr += '' + j + ''; } } //右侧列表页 if(endPage < page.totalPage && edgeNum > 0){ if((page.totalPage - edgeNum) > endPage){ htmlStr += '...'; } var begin = Math.max(page.totalPage - edgeNum, endPage); for(var i = begin; i < page.totalPage; i++){ var j = i + 1; if(j == curPage){ htmlStr += ''+ j +''; }else{ htmlStr += '' + j + ''; } } } if(curPage < page.totalPage){ var nextPage = curPage + 1 htmlStr += '下一页>'; }else{ htmlStr += '下一页>'; } htmlStr += '共' + page.totalPage + '页'; $("#ui-pager-div").html(htmlStr); } } function goToPageA(toPage){ $("#input-currentPage").val(toPage); $("#queryForm").submit(); } function searchCriteriaChange(doc){ var articleType = $(doc).attr("articleType"); if(articleType && articleType.length > 0){ if(articleType == 2){ $("#input-collocationSize").val("48"); }else if(articleType == 3){ $("#input-hardCoverSize").val("8"); } $("#input-articleType").val(articleType); } var fieldName = $(doc).attr("fieldName"); if(fieldName && fieldName.length > 0){ $("#input-" + fieldName).val($(doc).attr("valueId")); } $("#queryForm").submit(); } function getEmptyList(){ var html = '
' + '' + '

呀!被发现了!
所属标签下暂无搭配,先浏览其他试试吧!

' + //'

' + '
'; return html; } function searchCriteriaDel(doc){ var fieldName = $(doc).attr("fieldName"); if(fieldName && fieldName.length > 0){ $("#input-" + fieldName).val(""); } if($(".filter").length == 1){ $("#input-articleType").val(""); $("#input-hardCoverSize").val("4"); $("#input-collocationSize").val("32"); } $("#input-currentPage").val("1"); $("#queryForm").submit(); }