From 1498c053713ae1e735fb2c867e8fa5c08d7cb7f5 Mon Sep 17 00:00:00 2001 From: gongfuxiang <2499232802@qq.com> Date: Mon, 22 Apr 2019 02:21:38 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=86=E8=8A=82=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/index/controller/Goods.php | 9 ++++++ .../index/view/default/goods/index.html | 14 ++++++++ application/plugins/share/Hook.php | 32 +++++++++++++++++-- application/plugins/share/config.json | 3 ++ application/tags.php | 4 +++ public/static/index/default/css/buy.css | 21 ++++++------ public/static/index/default/css/common.css | 3 +- public/static/index/default/css/goods.css | 24 +++++++------- public/static/index/default/js/goods.js | 4 ++- 9 files changed, 87 insertions(+), 27 deletions(-) diff --git a/application/index/controller/Goods.php b/application/index/controller/Goods.php index 99b0cca11..bab96f76a 100755 --- a/application/index/controller/Goods.php +++ b/application/index/controller/Goods.php @@ -70,6 +70,15 @@ class Goods extends Common // 商品收藏总数 $ret['data'][0]['favor_count'] = GoodsService::GoodsFavorTotal(['goods_id'=>$id]); + // 商品页面相册底部钩子 + $this->assign('plugins_view_goods_detail_photo_bottom_data', Hook::listen('plugins_view_goods_detail_photo_bottom', + [ + 'hook_name' => 'plugins_view_goods_detail_photo_bottom', + 'is_backend' => false, + 'goods_id' => $id, + 'goods' => &$ret['data'][0], + ])); + // 商品页面基础信息顶部钩子 $this->assign('plugins_view_goods_detail_base_top_data', Hook::listen('plugins_view_goods_detail_base_top', [ diff --git a/application/index/view/default/goods/index.html b/application/index/view/default/goods/index.html index 0d5063d42..c2f342849 100755 --- a/application/index/view/default/goods/index.html +++ b/application/index/view/default/goods/index.html @@ -70,6 +70,20 @@ {{/if}} + + + {{if isset($shopxo_is_develop) and $shopxo_is_develop eq true and (!isset($is_footer) or $is_footer eq 1)}} +
+ plugins_view_goods_detail_photo_bottom +
+ {{/if}} + {{if !empty($plugins_view_goods_detail_photo_bottom_data) and is_array($plugins_view_goods_detail_photo_bottom_data)}} + {{foreach $plugins_view_goods_detail_photo_bottom_data as $hook}} + {{if is_string($hook) or is_int($hook)}} + {{$hook|raw}} + {{/if}} + {{/foreach}} + {{/if}} diff --git a/application/plugins/share/Hook.php b/application/plugins/share/Hook.php index 0d241b58d..27505cd35 100755 --- a/application/plugins/share/Hook.php +++ b/application/plugins/share/Hook.php @@ -49,7 +49,11 @@ class Hook extends Controller break; case 'plugins_view_common_bottom' : - $ret = $this->html($params); + $ret = $this->Content($params); + break; + + case 'plugins_view_goods_detail_photo_bottom' : + $ret = $this->GoodsPhotoBottom($params); break; } } @@ -57,14 +61,36 @@ class Hook extends Controller } /** - * 视图 + * 商品页面相册底部钩子 + * @author Devil + * @blog http://gong.gg/ + * @version 1.0.0 + * @datetime 2019-04-22T02:08:26+0800 + * @param [array] $params [输入参数] + */ + private function GoodsPhotoBottom($params = []) + { + // html + $html = '
'; + } + + /** + * 视图html * @author Devil * @blog http://gong.gg/ * @version 1.0.0 * @datetime 2019-02-06T16:16:34+0800 * @param [array] $params [输入参数] */ - public function html($params = []) + private function Content($params = []) { // 获取应用数据 $ret = PluginsService::PluginsData('share', ['pic']); diff --git a/application/plugins/share/config.json b/application/plugins/share/config.json index a271e82cc..2cdadaf5b 100644 --- a/application/plugins/share/config.json +++ b/application/plugins/share/config.json @@ -25,6 +25,9 @@ ], "plugins_view_common_bottom":[ "app\\plugins\\share\\Hook" + ], + "plugins_view_goods_detail_photo_bottom":[ + "app\\plugins\\share\\Hook" ] } } \ No newline at end of file diff --git a/application/tags.php b/application/tags.php index fee1f1724..4e5edac69 100755 --- a/application/tags.php +++ b/application/tags.php @@ -128,5 +128,9 @@ return array ( array ( 0 => 'app\\plugins\\petscms\\Hook', ), + 'plugins_view_goods_detail_photo_bottom' => + array ( + 0 => 'app\\plugins\\share\\Hook', + ), ); ?> \ No newline at end of file diff --git a/public/static/index/default/css/buy.css b/public/static/index/default/css/buy.css index 82af5eae6..a17eb744f 100755 --- a/public/static/index/default/css/buy.css +++ b/public/static/index/default/css/buy.css @@ -26,7 +26,7 @@ ul.logistics-list li.selected i.icon-active, ul.payment-list li.selected i.icon- background: url(../images/sys_item_selected.gif) no-repeat right bottom; } .business-item ul { padding: 10px 3px 5px 5px;} -ul.logistics-list li img, ul.payment-list li img { width: 36px; height: 36px; } +ul.logistics-list li img, ul.payment-list li img { width: 36px; height: 36px; vertical-align: middle; } .business-item ul li, ul.address-list li { -webkit-transition: border-color .2s ease-in; @@ -64,14 +64,14 @@ ul.address-list, .business-item ul { overflow: hidden; } /** * 手机下选择地址 */ -.mobile-address { position: fixed; left: 0; bottom: 0; background-color: #fff; width: 100%; height: 100%; z-index: 1099; padding-top: 0 !important; margin-top: 0 !important; border-top: 0 !important; overflow-y: scroll; overflow-x: hidden; padding-bottom: 28px; } -.mobile-address .control { margin-bottom: 10px; } -.mobile-address .control h3 { background-color: #eee; padding: 5px; } -.mobile-address .control, .mobile-address ul.address-list li, .mobile-address ul.address-list li .address-operation-btn { display: block !important; } -.mobile-address .control .address-submit-save { position: fixed; left: 0; bottom: 0; width: 100%; z-index: 100; } -.mobile-address ul.address-list li { border-bottom: 1px solid #eee; padding-top: 5px; } -.mobile-address ul.address-list li .address-left { width: 100%; } -.mobile-address ul.address-list li .address-right { display: none; } +.link-list .mobile-address { position: fixed; left: 0; bottom: 0; background-color: #fff; width: 100%; height: 100%; z-index: 1099; padding-top: 0 !important; margin-top: 0 !important; border-top: 0 !important; overflow-y: scroll; overflow-x: hidden; padding-bottom: 28px; } +.link-list .mobile-address .control { margin-bottom: 10px; } +.link-list .mobile-address .control h3 { background-color: #eee; padding: 5px; } +.link-list .mobile-address .control, .link-list .mobile-address ul.address-list li, .link-list .mobile-address ul.address-list li .address-operation-btn { display: block !important; } +.link-list .mobile-address .control .address-submit-save { position: fixed; left: 0; bottom: 0; width: 100%; z-index: 100; } +.link-list .mobile-address ul.address-list li { border-bottom: 1px solid #eee; padding-top: 5px; } +.link-list .mobile-address ul.address-list li .address-left { width: 100%; } +.link-list .mobile-address ul.address-list li .address-right { display: none; } @media only screen and (min-width:640px) { /*地址操作*/ @@ -100,6 +100,7 @@ ul.address-list, .business-item ul { overflow: hidden; } .order-nav {clear: both;text-align: right;position: relative;margin-top: 10px;border: none;} .order-nav .address-confirm .box{position: relative;float: right;z-index: 100;padding-right:2%; padding-bottom:10px;border: 1px solid #f50;font-family: tahoma;display: inline-block;right: 0;background-color: #fff0e8;} + .order-nav form.am-form { overflow: inherit;} .nav-buy .go-btn-wrap {width:100%;overflow: hidden;padding-top:10px;margin-bottom: 10px;} .nav-buy .btn-go {display: block;padding: 0 26px;height: 36px;font: 400 18px/36px arial;font-size: 18px;background-color: #d2364c;color: #fff;text-align: center;cursor: pointer;outline: 0; z-index:999;} @@ -156,7 +157,7 @@ ul.address-list, .business-item ul { overflow: hidden; } .buy-message { padding-top: 10px; } .pay-confirm em { font-size: 12px; } .pay-confirm .nav-total-price { color: #d2364c; font-weight: 700; } - .order-nav { background: #f5f5f5; } + .order-nav { background: #f5f5f5; z-index: 100; } .am-footer { padding-bottom: 45px; } } diff --git a/public/static/index/default/css/common.css b/public/static/index/default/css/common.css index cf7d48b76..47075a774 100755 --- a/public/static/index/default/css/common.css +++ b/public/static/index/default/css/common.css @@ -133,7 +133,7 @@ color: #F5F5F2;font-size: 14px;cursor:pointer;border-radius:0px 0px; position: a .nav-search{ position:relative;top:0px;z-index:0;margin-bottom: 5px;margin-top: 5px;} #ai-topsearch{ font-size:14px;height: 36px;line-height: 22px; font-weight: 500; width: 20%; } /*底部*/ - .am-footer {text-align:center; display:block;position: relative;margin: 0px auto; padding: 7px 0px 9px; margin-top:20px;} + .am-footer {text-align:center; display:block;position: relative;margin: 0px auto; padding: 7px 0px 9px; } /*选项卡样式*/ .am-nav-tabs > li span{font-size:16px;} @@ -427,6 +427,7 @@ background:url(../images/ibar_sprites.png) no-repeat;background-position:0px -23 border-top: 2px solid #d2364c; background: #303030; color: #e2e2e2; + margin-top:20px; } .am-footer-default a { font-size: 12px; diff --git a/public/static/index/default/css/goods.css b/public/static/index/default/css/goods.css index 4e5ba1917..22d08ca5c 100755 --- a/public/static/index/default/css/goods.css +++ b/public/static/index/default/css/goods.css @@ -41,7 +41,7 @@ input{font-size:12px;font-size:100%;outline:none;line-height:normal;color:#444;} .theme-signin-left .sku-line{float: left; margin:10px;margin-left:0;border-radius:3px ; background:#efefef ;padding:0px 8px; border: 1px solid #d5d5d5;} .theme-signin-left .sku-line.selected{background:#d2364c;color: #fff; border: 1px solid #d2364c;} .sku-line-images { padding:3px !important; } -.sku-line-images img { width: 30px; height: 30px; } +.sku-line-images img { width: 30px; height: 30px; vertical-align: middle; } .theme-signin .btn{width:100%;font-size: 16px;padding:5px ;} .btn-op{position:fixed;left:0;bottom: 0;width:100%; z-index: 3;} .iteminfo_parameter dt.buy-event {text-align: left;width:100% ;} @@ -174,9 +174,9 @@ ul.am-tabs-nav.am-nav.am-nav-tabs {background: #F5F5F5;} .goods-video-submit-close { z-index: 4; width: 50px; height: 50px; line-height: 48px; text-align: center; padding: 0; border: 2px solid #999; border-radius: 1000px; } /* 视频 放大镜 */ -.box .goods-video-submit-start { left: 1px; bottom: 73px; z-index: 2; padding: 10px 10px 2px 10px; } -.box .goods-video-submit-close { top: 10px; left: 288px; } -.box .goods-video-container { line-height: 32px; font-size: 32px; color: #f00; background: #fff; text-align: center; width: 348px; height: 348px; top: 1px; left: 1px; z-index: 3; } +.box .goods-video-submit-start { left: 1px; bottom: 85px; z-index: 2; padding: 10px 10px 2px 10px; } +.box .goods-video-submit-close { top: 10px; right: 10px; } +.box .goods-video-container { line-height: 32px; font-size: 32px; color: #f00; background: #fff; text-align: center; width: 100%; height: 100%; top: 0; left: 0; z-index: 3; } /* 视频 轮播下 */ .scoll .goods-video-submit-start { left: 0; bottom: 0; z-index: 2; padding: 10px 10px 5px 10px; } @@ -348,24 +348,26 @@ li.am-comment{ width:100%} /* 视频 */ .scoll .goods-video-submit-close { top: 10px; } + + /* 基础主体 */ + .item-inform { margin-bottom: 20px; } } @media only screen and (min-width:1025px) { /*放大镜*/ /* box */ - .box { width:700px; margin:0px auto; position: relative; } + .box { position: relative; border: 1px solid #CDCDCD; } .tb-pic a { display:table-cell; text-align:center; vertical-align:middle; } .tb-pic a img {vertical-align:middle; } .tb-pic a {*display:block;*font-family:Arial;*line-height:1;} - .tb-thumb {margin:10px 0 0; overflow:hidden; } + .tb-thumb { padding: 10px; overflow:hidden; } .tb-thumb li {background:none repeat scroll 0 0 transparent; float:left; margin:0 6px 0 0; overflow:hidden; padding:1px; } - .tb-s310, .tb-s310 a { height:350px; width:350px; } .tb-s310 a { *font-size:271px;} .tb-s40 a { *font-size:35px;} .tb-s40{ height:60px; width:60px; } - .tb-booth { border:1px solid #CDCDCD; position:relative; z-index:1;overflow: hidden; } - .tb-booth img { max-width: 100%; max-height: 100%; } + .tb-booth { border-bottom:1px solid #eee; position:relative; z-index:1;overflow: hidden; } + .tb-booth img { width: 100%; height: 100%; } .tb-thumb .tb-selected { background:none repeat scroll 0 0 #C30008; height:62px;} .tb-thumb .tb-selected div { background-color:#FFFFFF; border:medium none; } .tb-thumb li div { border:1px solid #CDCDCD; overflow: hidden;} @@ -395,7 +397,7 @@ li.am-comment{ width:100%} .theme-signin-left .cart-title{margin-left: -46px;font-size:12px ;font-weight: 100;color:#888 ;float: left;} .scoll{display: none;} - .item-inform{max-width:1000px ;margin:0px auto;background:#fff; margin-top: 20px; margin-bottom: 20px;} + .item-inform{max-width:1000px; background:#fff; margin-top: 20px; } .clearfix-left{display:block;float: left;width:360px;} .clearfix-right{width:calc(100% - 370px);margin-left:10px;} .freight{width:400px;float: left;} @@ -429,12 +431,10 @@ li.am-comment{ width:100%} .item-inform ,.match,.introduce-main,.am-breadcrumb-slash{max-width: 1200px;} .clearfix-left {width: 400px;} /*放大镜*/ - .tb-s310, .tb-s310 a ,.tb-s310, .tb-s310 img { height:400px; width:400px;} .clearfix-right {width: calc(100% - 420px);margin-left:20px;} /* 视频 */ .box .goods-video-submit-close { left: 340px; } - .box .goods-video-container { width: 398px; height: 398px; } /*导航固定*/ ul.am-tabs-nav.am-nav.am-nav-tabs {left:auto;right:auto;width:960px ;} diff --git a/public/static/index/default/js/goods.js b/public/static/index/default/js/goods.js index 24969e580..25905a1bf 100755 --- a/public/static/index/default/js/goods.js +++ b/public/static/index/default/js/goods.js @@ -363,7 +363,9 @@ $(function() { }); // 放大镜初始化 - $('.jqzoom').imagezoom(); + $('.jqzoom').imagezoom({ + yzoom: 398 + }); $('#thumblist li a').on('mouseover', function() { $(this).parents('li').addClass('tb-selected').siblings().removeClass('tb-selected'); $('.jqzoom').attr('src', $(this).find('img').attr('mid'));