From c466af00ead4d6bf54ef8d122a6f7da35e49cdc1 Mon Sep 17 00:00:00 2001
From: 阿达 <abel.wang@yoho.cn>
Date: Tue, 31 May 2016 10:46:09 +0800
Subject: [PATCH] -提交部分banner代码

---
 apps/product/models/simulation.js               |   4 ++--
 apps/product/views/action/sale/discount.hbs     |   4 +++-
 apps/product/views/action/sale/other.hbs        |   8 ++++++--
 apps/product/views/partial/sale/sale-banner.hbs |  16 +++++++---------
 doraemon/views/partial/common/slide-banner.hbs  |   4 ++--
 doraemon/views/partial/product/filter-box.hbs   |   2 +-
 doraemon/views/partial/product/good.hbs         |   9 +++++++--
 public/js/product/product.js                    | 180 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-----------------------------------------------
 public/js/product/sale.page.js                  |   2 +-
 9 files changed, 162 insertions(+), 67 deletions(-)

diff --git a/apps/product/models/simulation.js b/apps/product/models/simulation.js
index 830a419..dd4cce7 100644
--- a/apps/product/models/simulation.js
+++ b/apps/product/models/simulation.js
@@ -297,10 +297,10 @@ exports.other = () => {
                 bannerHeight: 450,
                 list: [
                     {
-                        img: 'http://img10.static.yhbimg.com/yhb-img01/2016/05/16/11/0176c310938764910f7fe5f22c450d3f00.jpg?imageView2/{mode}/w/{width}/h/{height'
+                        img: 'http://img10.static.yhbimg.com/yhb-img01/2016/05/16/11/0176c310938764910f7fe5f22c450d3f00.jpg?imageView2/{mode}/w/{width}/h/{height}'
                     },
                     {
-                        img: 'http://img10.static.yhbimg.com/yhb-img01/2016/05/20/10/01360161e0099b26083b163c5158f93409.jpg?imageView2/{mode}/w/{width}/h/{height'
+                        img: 'http://img10.static.yhbimg.com/yhb-img01/2016/05/20/10/01360161e0099b26083b163c5158f93409.jpg?imageView2/{mode}/w/{width}/h/{height}'
                     }
                 ]
 
diff --git a/apps/product/views/action/sale/discount.hbs b/apps/product/views/action/sale/discount.hbs
index 87274ad..351187d 100644
--- a/apps/product/views/action/sale/discount.hbs
+++ b/apps/product/views/action/sale/discount.hbs
@@ -2,7 +2,9 @@
 {{# result}}
 <div class="sale-discount-page yoho-page center-content .new-sale-page">
 
-    {{> sale/sale-banner}}
+    {{#topBanner}}
+        {{> sale/sale-banner}}
+    {{/topBanner}}
 
     <div class="center-content clearfix">
         {{#saleTitle}}
diff --git a/apps/product/views/action/sale/other.hbs b/apps/product/views/action/sale/other.hbs
index 566cd21..4dc8b51 100644
--- a/apps/product/views/action/sale/other.hbs
+++ b/apps/product/views/action/sale/other.hbs
@@ -2,7 +2,11 @@
 <div class="new-sale-page product-page yoho-page">
     {{# saleList}}
 
-        {{> sale/sale-banner}}
+        {{#topBanner}}
+            {{> sale/sale-banner}}
+        {{/topBanner}}
+
+
 
         <div class="center-content clearfix">
             {{# saleTitle}}
@@ -24,4 +28,4 @@
             </div>
         </div>
     {{/ saleList}}
-</div>
\ No newline at end of file
+</div>
diff --git a/apps/product/views/partial/sale/sale-banner.hbs b/apps/product/views/partial/sale/sale-banner.hbs
index 37951fc..2a62cdb 100644
--- a/apps/product/views/partial/sale/sale-banner.hbs
+++ b/apps/product/views/partial/sale/sale-banner.hbs
@@ -1,9 +1,7 @@
-{{# saleBanner}}
-    <div class="sale-list-banner" style="height: {{bannerHeight}}px;">
-        <ul>
-            {{# list}}
-                <li class="banner-img" style="background:url({{image img 1150 450}}) no-repeat top center;"></li>
-            {{/ list}}
-        </ul>
-    </div>
-{{/ saleBanner}}
+<div class="sale-list-banner" style="height: 360px;">
+    <ul>
+        {{# list}}
+            <li class="banner-img" style="background:url({{image img 1920 360}}) no-repeat top center;"></li>
+        {{/ list}}
+    </ul>
+</div>
diff --git a/doraemon/views/partial/common/slide-banner.hbs b/doraemon/views/partial/common/slide-banner.hbs
index 1199bba..a6dd004 100644
--- a/doraemon/views/partial/common/slide-banner.hbs
+++ b/doraemon/views/partial/common/slide-banner.hbs
@@ -5,9 +5,9 @@
                 <li style="{{#if bgColor}}background:{{bgColor}}{{/if}}">
                     <a href="{{href}}" target= "_blank">
                         {{#if @first}}
-                            <img src="{{image img 1150 450}}">
+                            <img src="{{image img 1150 450}}" style="height: 450px;width: 1150px">
                         {{^}}
-                            <img class="lazy" data-original="{{image img 1150 450}}" alt="">
+                            <img class="lazy" data-original="{{image img 1150 450}}" style="height: 450px;width: 1150px" alt="">
                         {{/if}}
                     </a>
                     {{# tips}}
diff --git a/doraemon/views/partial/product/filter-box.hbs b/doraemon/views/partial/product/filter-box.hbs
index 3d1b2c2..2af8bec 100644
--- a/doraemon/views/partial/product/filter-box.hbs
+++ b/doraemon/views/partial/product/filter-box.hbs
@@ -172,7 +172,7 @@
 
             <div class="attr-content clearfix">
                 {{# price}}
-                    <a class="attr{{#if checked}} checked{{/if}}" href="{{href}}">¥{{name}}</a>
+                    <a class="attr{{#if checked}} checked{{/if}}" href="{{href}}">{{name}}</a>
                 {{/ price}}
 
                 <div class="ud-price-range">
diff --git a/doraemon/views/partial/product/good.hbs b/doraemon/views/partial/product/good.hbs
index 8abb37d..b04826b 100644
--- a/doraemon/views/partial/product/good.hbs
+++ b/doraemon/views/partial/product/good.hbs
@@ -45,11 +45,16 @@
         {{/brand}}
         <p class="price">
             {{# marketPrice}}
-                <span class="market-price">¥{{.}}</span>
+                <span class="market-price">{{.}}</span>
             {{/ marketPrice}}
             <span class="sale-price{{#unless marketPrice}}prime-cost{{/unless}}">
-                ¥{{salePrice}}
+                ¥{{salesPrice}}
             </span>
         </p>
+        <div class="goodsList hide">
+            {{#goodsList}}
+                <div class="list" imgUrl = "{{imagesUrl}}" url = "{{goodsId}}" cover = "{{cover1}}"></div>
+            {{/goodsList}}
+        </div>
     </div>
 </div>
diff --git a/public/js/product/product.js b/public/js/product/product.js
index 9a75564..5e3a3cb 100644
--- a/public/js/product/product.js
+++ b/public/js/product/product.js
@@ -83,10 +83,90 @@ exports.init = function(num) {
         });
     }
 
+    //原来的
+    //productList.addHandler('MouseEnter', function(event) {
+    //    var itemMr = 10, // list的右边距
+    //        itemMb = 35, // list的下边距
+    //        ulStr = '',
+    //        ulNum,
+    //        wrapperWidth,
+    //        diffWidth,
+    //        wrapperX,
+    //        wrapperY,
+    //        wrapperPl, // 鼠标移入时弹层的左内边距
+    //        wrapperPt, // 鼠标移入时弹层的上内边距
+    //        containerPt, // 商品列表容器的上内边距
+    //        _from = event.target.attr('data-from') || '';
+    //
+    //    $.ajax({
+    //        type: 'POST',
+    //        url: '/product/list/getProductPic',
+    //        dataType: 'jsonp',
+    //        jsonp: 'callback',
+    //        data: {
+    //            skn: event.target.attr('data-skn'),
+    //            skc: event.target.attr('data-skc')
+    //        }
+    //    }).then(function(res) {
+    //        var data = res.data,
+    //            colorList = createColorList(data.pics, _from);
+    //
+    //        removeHtmlFn();
+    //
+    //        ulStr = colorList.colorListStr; // ajax请求的颜色列表
+    //        ulNum = colorList.ulNum;// ajax请求的颜色的数量
+    //
+    //        $goodInfoMain.append(event.targetDuplicate);
+    //        $goodSelectColor.append($(ulStr));
+    //
+    //        // 点击收藏商品不需要了
+    //        // if (data.isFavorite) {
+    //        //     $goodInfoMain.find('.col-btn').addClass('coled');
+    //        // } else {
+    //        //     $goodInfoMain.find('.col-btn').removeClass('coled');
+    //        // }
+    //
+    //        wrapperPl = $goodItemWrapper.css('paddingLeft');
+    //        wrapperPt = $goodItemWrapper.css('paddingTop');
+    //        containerPt = $goodsContainer.css('paddingTop');
+    //
+    //        wrapperWidth = 10 + (15 + 50) * ulNum + event.targetWidth;
+    //
+    //        // wrapperWidth = $goodItemWrapper.width();
+    //
+    //        wrapperX = (event.targetX - 1) * (event.targetWidth + itemMr) - (parseInt(wrapperPl) + 1);
+    //        wrapperY = (event.targetY - 1) *
+    //        (event.targetHeight + itemMb) + parseInt(containerPt) - (parseInt(wrapperPt) + 1);
+    //
+    //        // todo
+    //        // event.offsetR表示当前列表距离浏览器右侧边缘的距离
+    //        diffWidth = event.offsetR - ((15 + 50) * ulNum + 25);
+    //
+    //        if (diffWidth <= 0) {
+    //            wrapperX = wrapperX + diffWidth - 25;
+    //        }
+    //        $goodItemWrapper.css({
+    //            width: wrapperWidth,
+    //            left: wrapperX,
+    //            top: wrapperY,
+    //            display: 'inline-block'
+    //        });
+    //
+    //        // 鼠标悬浮获取到商品信息后显示第一张图片
+    //        if (data.pics[0] && data.pics[0].src) {
+    //            $goodInfoMain.find('.good-thumb img').attr('src', data.pics[0].src);
+    //        }
+    //    });
+    //});
+
     productList.addHandler('MouseEnter', function(event) {
         var itemMr = 10, // list的右边距
             itemMb = 35, // list的下边距
             ulStr = '',
+            imageList,
+            pic, pics,
+            listCount,
+            i,item,
             ulNum,
             wrapperWidth,
             diffWidth,
@@ -97,65 +177,68 @@ exports.init = function(num) {
             containerPt, // 商品列表容器的上内边距
             _from = event.target.attr('data-from') || '';
 
-        $.ajax({
-            type: 'POST',
-            url: '/product/list/getProductPic',
-            dataType: 'jsonp',
-            jsonp: 'callback',
-            data: {
-                skn: event.target.attr('data-skn'),
-                skc: event.target.attr('data-skc')
-            }
-        }).then(function(res) {
-            var data = res.data,
-                colorList = createColorList(data.pics, _from);
 
-            removeHtmlFn();
+        listCount = event.target.find('.goodsList').length;
+
+        pics = [];
+        for (i = 0 ; i < listCount ; i++) {
+            item = event.target.find('.goodsList').find('.list').eq(i);
+            pic = {
+                url: item.attr('url'),
+                src: item.attr('imgUrl'),
+                coverImg: item.attr('cover')
+            };
+            //pic = {
+            //    url: 'dasda',
+            //    src: 'http://img10.static.yhbimg.com/yhb-img01/2016/05/16/11/0176c310938764910f7fe5f22c450d3f00.jpg?imageView2/2/w/100/h/100',
+            //    coverImg: 'http://img10.static.yhbimg.com/yhb-img01/2016/05/16/11/0176c310938764910f7fe5f22c450d3f00.jpg?imageView2/2/w/100/h/100'
+            //};
+            pics.push(pic);
+        }
+
+        imageList = {
+            pics : pics
+        }
 
-            ulStr = colorList.colorListStr; // ajax请求的颜色列表
-            ulNum = colorList.ulNum;// ajax请求的颜色的数量
+        var data = imageList,
+            colorList = createColorList(imageList.pics, _from);
 
-            $goodInfoMain.append(event.targetDuplicate);
-            $goodSelectColor.append($(ulStr));
+        removeHtmlFn();
 
-            // 点击收藏商品不需要了
-            // if (data.isFavorite) {
-            //     $goodInfoMain.find('.col-btn').addClass('coled');
-            // } else {
-            //     $goodInfoMain.find('.col-btn').removeClass('coled');
-            // }
+        ulStr = colorList.colorListStr; // ajax请求的颜色列表
+        ulNum = colorList.ulNum;// ajax请求的颜色的数量
 
-            wrapperPl = $goodItemWrapper.css('paddingLeft');
-            wrapperPt = $goodItemWrapper.css('paddingTop');
-            containerPt = $goodsContainer.css('paddingTop');
+        $goodInfoMain.append(event.targetDuplicate);
+        $goodSelectColor.append($(ulStr));
 
-            wrapperWidth = 10 + (15 + 50) * ulNum + event.targetWidth;
+        wrapperPl = $goodItemWrapper.css('paddingLeft');
+        wrapperPt = $goodItemWrapper.css('paddingTop');
+        containerPt = $goodsContainer.css('paddingTop');
 
-            // wrapperWidth = $goodItemWrapper.width();
+        wrapperWidth = 10 + (15 + 50) * ulNum + event.targetWidth;
 
-            wrapperX = (event.targetX - 1) * (event.targetWidth + itemMr) - (parseInt(wrapperPl) + 1);
-            wrapperY = (event.targetY - 1) *
+        wrapperX = (event.targetX - 1) * (event.targetWidth + itemMr) - (parseInt(wrapperPl) + 1);
+        wrapperY = (event.targetY - 1) *
             (event.targetHeight + itemMb) + parseInt(containerPt) - (parseInt(wrapperPt) + 1);
 
-            // todo
-            // event.offsetR表示当前列表距离浏览器右侧边缘的距离
-            diffWidth = event.offsetR - ((15 + 50) * ulNum + 25);
+        // todo
+        // event.offsetR表示当前列表距离浏览器右侧边缘的距离
+        diffWidth = event.offsetR - ((15 + 50) * ulNum + 25);
 
-            if (diffWidth <= 0) {
-                wrapperX = wrapperX + diffWidth - 25;
-            }
-            $goodItemWrapper.css({
-                width: wrapperWidth,
-                left: wrapperX,
-                top: wrapperY,
-                display: 'inline-block'
-            });
-
-            // 鼠标悬浮获取到商品信息后显示第一张图片
-            if (data.pics[0] && data.pics[0].src) {
-                $goodInfoMain.find('.good-thumb img').attr('src', data.pics[0].src);
-            }
+        if (diffWidth <= 0) {
+            wrapperX = wrapperX + diffWidth - 25;
+        }
+        $goodItemWrapper.css({
+            width: wrapperWidth,
+            left: wrapperX,
+            top: wrapperY,
+            display: 'inline-block'
         });
+
+        // 鼠标悬浮获取到商品信息后显示第一张图片
+        if (imageList.pics[0] && imageList.pics[0].src) {
+            $goodInfoMain.find('.good-thumb img').attr('src', imageList.pics[0].src);
+        }
     });
 
     productList.addHandler('MouseLeave', function() {
@@ -169,6 +252,9 @@ exports.init = function(num) {
 
 };
 
+
+
+
 // 鼠标放在颜色列表上效果
 $(document).on('hover', '.good-select-color li', function() {
     var coverImg = $(this).find('img').attr('data-cover'),
diff --git a/public/js/product/sale.page.js b/public/js/product/sale.page.js
index 69467a6..f11287b 100644
--- a/public/js/product/sale.page.js
+++ b/public/js/product/sale.page.js
@@ -9,7 +9,7 @@ require('../common/slider');
 require('../common/filter');
 require('../common/sort-pager');
 
-product.init();
+product.init(4);
 
 lazyLoad($('img.lazy'));
 $('.slide-container').slider();
--
libgit2 0.24.0