周立森 5 years ago
parent
commit
1d6d6b50a0

BIN
foyo.zip View File


+ 5
- 0
package-lock.json View File

9900
         "ajv-keywords": "^3.1.0"
9900
         "ajv-keywords": "^3.1.0"
9901
       }
9901
       }
9902
     },
9902
     },
9903
+    "scroll-js": {
9904
+      "version": "3.0.0",
9905
+      "resolved": "https://registry.npm.taobao.org/scroll-js/download/scroll-js-3.0.0.tgz",
9906
+      "integrity": "sha1-F3NVJl728A4c138eIvnxhbpqXYE="
9907
+    },
9903
     "select-hose": {
9908
     "select-hose": {
9904
       "version": "2.0.0",
9909
       "version": "2.0.0",
9905
       "resolved": "http://registry.npm.taobao.org/select-hose/download/select-hose-2.0.0.tgz",
9910
       "resolved": "http://registry.npm.taobao.org/select-hose/download/select-hose-2.0.0.tgz",

+ 1
- 0
package.json View File

11
     "axios": "^0.19.0",
11
     "axios": "^0.19.0",
12
     "core-js": "^2.6.5",
12
     "core-js": "^2.6.5",
13
     "element-ui": "^2.11.1",
13
     "element-ui": "^2.11.1",
14
+    "scroll-js": "^3.0.0",
14
     "swiper": "^4.5.0",
15
     "swiper": "^4.5.0",
15
     "vue": "^2.6.10",
16
     "vue": "^2.6.10",
16
     "vue-axios": "^2.1.4",
17
     "vue-axios": "^2.1.4",

+ 83
- 9
src/App.vue View File

5
         <div class="container-fluid con">
5
         <div class="container-fluid con">
6
           <!-- Brand and toggle get grouped for better mobile display -->
6
           <!-- Brand and toggle get grouped for better mobile display -->
7
           <div class="navbar-header">
7
           <div class="navbar-header">
8
-            <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
9
-              <span class="iconfont icon-caidan"></span>
8
+            <button type="button" class="navbar-toggle collapsed">
9
+              <span class="iconfont icon-caidan" @click="navdrawer = true"></span>
10
             </button>
10
             </button>
11
+            <!-- <el-button class="btn-link" @click="navdrawer = true" type="button" style="margin-left: 16px;"><span class="iconfont icon-caidan"></span></el-button> -->
11
             <a class="navbar-brand" href="#">
12
             <a class="navbar-brand" href="#">
12
               <!-- <img alt="Brand" src="./assets/logo1.png" /> -->
13
               <!-- <img alt="Brand" src="./assets/logo1.png" /> -->
13
               <div alt="Brand" class="logo"></div>
14
               <div alt="Brand" class="logo"></div>
44
       </nav>
45
       </nav>
45
     </div>
46
     </div>
46
 
47
 
48
+    <el-drawer :visible.sync="navdrawer" :show-close="true" size="80%">
49
+      <div>
50
+        <el-row style="text-align: center;">
51
+
52
+          
53
+              
54
+        <el-col :span="24" >
55
+          <img src="./assets/image/mobile/Sidemenulogo.png" width="46%" style="margin: 0 auto">
56
+           </el-col>
57
+          <el-col :span="24" class="a">
58
+            <a href="/">01 回到首页</a>
59
+          </el-col>
60
+
61
+          <el-col :span="24" class="a">
62
+            <a href="/case">02 案例展示</a>
63
+          </el-col>
64
+
65
+          <el-col :span="24" class="a">
66
+            <a href="/dynamic">03 动态分享</a>
67
+          </el-col>
68
+
69
+          <el-col :span="24" class="a">
70
+            <a href="/about">04 关于福予</a>
71
+          </el-col>
72
+
73
+          <el-col :span="24" class="a">
74
+            <a href="/contact">05 联系我们</a>
75
+          </el-col>
76
+
77
+          <el-col :span="24" class="a">
78
+             <button type="button" class="btn btn-default" @click="navdrawer = flase" style="color:black;font-size: 24px;">继续浏览</button>
79
+          </el-col>
80
+        </el-row>
81
+      </div>
82
+    </el-drawer>
83
+
47
     <div class="main">
84
     <div class="main">
48
       <router-view />
85
       <router-view />
49
     </div>
86
     </div>
65
 
102
 
66
     <div class="coll">
103
     <div class="coll">
67
       <div>
104
       <div>
68
-        <div class="btn btn-default" href="#" role="button" v-if="!current1" @mouseenter="enter1()" @mouseleave="leave1()" style="position:fixed;right:0;bottom:306px;margin:0;padding:0;z-index: 3;">
105
+        <div class="btn btn-default" href="#" role="button" @mouseenter="enter1()" style="position:fixed;right:0;bottom:306px;margin:0;padding:0;z-index: 3;">
69
           <img src="./assets/image/联系我们.jpg" alt style="position:fixed;right:0;bottom:306px;margin:0;padding:0;z-index: 3;" />
106
           <img src="./assets/image/联系我们.jpg" alt style="position:fixed;right:0;bottom:306px;margin:0;padding:0;z-index: 3;" />
70
         </div>
107
         </div>
71
-        <el-button class="btn btn-default" @click="open" v-if="current1" @mouseenter.stop="enter1()" style="position:fixed;right:0;bottom:306px;margin:0;padding:0;z-index: 4;">
108
+        <div class="btn btn-default" role="button" @click="open" v-if="current1" @mouseenter.stop="enter1() " @mouseleave="leave1()" style="position:fixed;right:0;bottom:306px;margin:0;padding:0;z-index: 4;">
72
           <img src="./assets/image/联系我们触发.png" @mouseleave="leave1()" alt style="position:fixed;right:0;bottom:306px;margin:0;padding:0;z-index: 4;" />
109
           <img src="./assets/image/联系我们触发.png" @mouseleave="leave1()" alt style="position:fixed;right:0;bottom:306px;margin:0;padding:0;z-index: 4;" />
73
-        </el-button>
110
+        </div>
74
       </div>
111
       </div>
75
     </div>
112
     </div>
76
     <div class="coll">
113
     <div class="coll">
77
       <div>
114
       <div>
78
-        <a href="#" role="button" @mouseenter="enter2()" @mouseleave="leave2()" style="position:fixed;right:0;bottom:250px;margin:0;padding:0;z-index: 3;">
115
+        <a href="#" role="button" @mouseenter="enter2()" style="position:fixed;right:0;bottom:250px;margin:0;padding:0;z-index: 3;">
79
           <img src="./assets/image/返回顶层.jpg" style="position:fixed;right:0;bottom:250px;margin:0;padding:0;z-index: 3;" />
116
           <img src="./assets/image/返回顶层.jpg" style="position:fixed;right:0;bottom:250px;margin:0;padding:0;z-index: 3;" />
80
         </a>
117
         </a>
81
       </div>
118
       </div>
102
       scrolled: false,
139
       scrolled: false,
103
       current1: false,
140
       current1: false,
104
       current2: false,
141
       current2: false,
142
+      key: 1,
143
+      navdrawer: false,
144
+      direction: 'rtl',
105
     }
145
     }
106
   },
146
   },
107
   components: {
147
   components: {
128
     },
168
     },
129
 
169
 
130
     open () {
170
     open () {
131
-      this.$alert('', {
132
-        dangerouslyUseHTMLString: true
133
-      });
171
+      const h = this.$createElement;
172
+      this.$msgbox({
173
+        title: '',
174
+        message: h(ClickContact, { key: this.key++ }),
175
+        showClose: true,
176
+        showCancelButton: false,
177
+        center: true,
178
+        showConfirmButton: false,
179
+        customClass: 'messageBox-Contace',
180
+
181
+
182
+
183
+      })
134
     }
184
     }
135
 
185
 
136
   },
186
   },
149
 }
199
 }
150
 </script>
200
 </script>
151
 
201
 
202
+<style>
203
+.messageBox-Contace {
204
+  width: 80% !important;
205
+}
206
+</style>
152
 
207
 
153
 
208
 
154
 <style>
209
 <style>
206
 .main {
261
 .main {
207
   padding-bottom: 9.4rem;
262
   padding-bottom: 9.4rem;
208
 }
263
 }
264
+@media (max-width: 992px) {
265
+  .navbar-brand {
266
+    padding: 0;
267
+  }
268
+  .logo {
269
+    width: 300px;
270
+    height: 50px;
271
+    background: url("./assets/logo1.png");
272
+  }
273
+  .a{
274
+    font-size: 2.4rem;
275
+    margin-top: 2rem;
276
+    color: #000;
277
+     
278
+  }
279
+  .a a{
280
+    color: #000;
281
+  }
282
+}
209
 </style>
283
 </style>
210
 
284
 
211
 
285
 

src/assets/image/mobile/侧菜单logo.png → src/assets/image/mobile/Sidemenulogo.png View File


+ 3
- 0
src/components/Business.vue View File

1
 <template>
1
 <template>
2
   <div class="business">
2
   <div class="business">
3
+
4
+
5
+    
3
     <div class="swiper-container" id="swiper2">
6
     <div class="swiper-container" id="swiper2">
4
       <div class="swiper-wrapper">
7
       <div class="swiper-wrapper">
5
 
8
 

+ 10
- 3
src/components/ClickContact.vue View File

31
 </template>
31
 </template>
32
 
32
 
33
 
33
 
34
+<style>
35
+
36
+</style>
37
+
38
+
34
 <style scoped>
39
 <style scoped>
35
 /* .contact-box {
40
 /* .contact-box {
36
   width: 80%;
41
   width: 80%;
57
   }
62
   }
58
 }
63
 }
59
 
64
 
65
+
66
+
60
 @media (min-width: 992px) {
67
 @media (min-width: 992px) {
61
   .contact-1 {
68
   .contact-1 {
62
-    width: 80%;
69
+    
63
     padding: 50px;
70
     padding: 50px;
64
-    margin-top: -120px;
71
+  
65
 
72
 
66
     background-color: #fff;
73
     background-color: #fff;
67
     display: inline-block;
74
     display: inline-block;
68
     border-radius: 0;
75
     border-radius: 0;
69
-    border: 1px solid #dcdcdc;
76
+ 
70
   }
77
   }
71
 
78
 
72
   .contact-1 .contact-main {
79
   .contact-1 .contact-main {

+ 95
- 0
src/components/wheelplanting1.vue View File

1
+<template>
2
+<!-- 手机 -->
3
+  <div class="wheelplanting1">
4
+    <div class="swiper-container con-swiper">
5
+      <div class="swiper-wrapper">
6
+        <!-- <div class="col-md-2 col-xs-2" v-for="(item,index) in blogs" :key="index+'img'">
7
+            <img  :src="item.logoImg" alt class="ph-logo" />
8
+        </div>-->
9
+        <!-- <div v-for="item in blogs" :key="item">
10
+          <div class="swiper-slide">
11
+            <img :src="item.imageUrl" width="100%" height="" alt />
12
+          </div>
13
+        </div>-->
14
+        <div class="swiper-slide" v-for="(url,index) in blogs" :key="index+'url'">
15
+          <img :src="url.imageUrl" width="100%" height="100%" />
16
+        </div>
17
+        <!-- <div class="swiper-slide">
18
+          <img src="http://jingcheng-h5temp.oss-cn-shanghai.aliyuncs.com/1566890344965.png?Expires=1568717732&OSSAccessKeyId=LTAIkc75dpkJw8Lb" width="100%" height="100%" />
19
+        </div>
20
+        <div class="swiper-slide">
21
+          <img src="http://jingcheng-h5temp.oss-cn-shanghai.aliyuncs.com/1566890344965.png?Expires=1568717732&OSSAccessKeyId=LTAIkc75dpkJw8Lb" width="100%" height="100%" />
22
+        </div>-->
23
+      </div>
24
+      <div class="swiper-pagination"></div>
25
+    </div>
26
+  </div>
27
+</template>
28
+
29
+<script>
30
+import Swiper from "swiper";
31
+import "swiper/dist/css/swiper.min.css";
32
+import request from '../../utils/request';
33
+import apis from '../config/api';
34
+
35
+export default {
36
+  name: "wheelplanting1",
37
+  data () {
38
+    return {
39
+      data: '',
40
+      blogs: {},
41
+    };
42
+  },
43
+  components: {},
44
+
45
+  mounted () {
46
+
47
+
48
+    new Swiper(".swiper-container", {
49
+      loop: true,
50
+      autoplay: true,
51
+      // direction: "vertical",
52
+      observer: true,
53
+      observeSlideChildren: true,
54
+
55
+      pagination: {
56
+        el: ".swiper-pagination",
57
+        hideOnClick: true
58
+      }
59
+    });
60
+
61
+
62
+
63
+
64
+
65
+  },
66
+  created () {
67
+    // axios.get('http://localhost:8080/pc/carousel/list')
68
+    request({
69
+      ...apis.carousel.list,
70
+    }).then(data => {
71
+
72
+      this.blogs = data;
73
+    })
74
+
75
+
76
+
77
+  }
78
+};
79
+</script>
80
+
81
+<style scoped>
82
+@media (min-width: 992px) {
83
+  .wheelplanting .con-swiper {
84
+    width: 100%;
85
+    height: 100vh;
86
+  }
87
+}
88
+@media (max-width: 992px){
89
+  
90
+  .wheelplanting .con-swiper {
91
+    width: 100%;
92
+   height: 300px;
93
+  }
94
+}
95
+</style>

+ 1
- 1
src/config/api.js View File

8
   },
8
   },
9
   case: {
9
   case: {
10
     cover: {
10
     cover: {
11
-      url: `${commPrefix}/case/cover`,
11
+      url: `${commPrefix}/cover`,
12
       method: 'get',
12
       method: 'get',
13
     },
13
     },
14
 
14
 

+ 93
- 64
src/views/About.vue View File

8
       <div class="row">
8
       <div class="row">
9
         <div class="col-md-12">
9
         <div class="col-md-12">
10
           <div class="sssss">
10
           <div class="sssss">
11
-            <p class="text-left" >
11
+            <p class="text-left" style="font-size: 2.4rem">
12
               南京福予文化传媒有限公司成立于2018年6月,是一家崇尚服务与品质的广告创意公司,拥有多元化的团队体系及全案服务能
12
               南京福予文化传媒有限公司成立于2018年6月,是一家崇尚服务与品质的广告创意公司,拥有多元化的团队体系及全案服务能
13
               力。从品牌策略到营销策划、广告创意、设计成型、落地执行、一站式解决客户所需。
13
               力。从品牌策略到营销策划、广告创意、设计成型、落地执行、一站式解决客户所需。
14
             </p>
14
             </p>
15
             <br />
15
             <br />
16
             <div class="col-md-12">
16
             <div class="col-md-12">
17
-            <div class="abc">
18
-              <img src="../assets/image/about/FOYO.jpg" style="width:100%" />
17
+              <div class="abc">
18
+                <img src="../assets/image/about/FOYO.jpg" style="width:100%" />
19
+              </div>
19
             </div>
20
             </div>
20
           </div>
21
           </div>
21
-          </div>
22
         </div>
22
         </div>
23
       </div>
23
       </div>
24
 
24
 
82
       </div>
82
       </div>
83
 
83
 
84
       <div class="row about-2">
84
       <div class="row about-2">
85
-        <div class="col-xs-6 col-md-3">
86
-          <img src="../assets/image/about/Photo_sfg.jpg" class="about-ph1" alt="..." />
87
-        </div>
88
-        <div class="col-xs-6 col-md-3" style="padding: 0">
89
-          <div class="text-left">
90
-            <h1 style="margin-top: 0; font-size: 3.6rem">孙福高</h1>
91
-            <p style="font-size: 2.2rem;color: #595757;margin-bottom: 20px">创始人兼艺术总监</p>
92
-            <p style="font-size: 2.2rem">
93
-              10多年视觉设计经验;
94
-              <br />8余年项目管理经验;
95
-              <br />擅长将多种媒体技术与新兴技术结合;
96
-              <br />带队服务于丰盛集团、中国船舶重工集团、银城地产等上市公司及国企。
97
-            </p>
85
+        <div class="col-xs-12 col-md-6">
86
+          <div style="float:left;">
87
+            <img src="../assets/image/about/Photo_sfg.jpg" class="about-ph1" alt="..." />
88
+          </div>
89
+          <div class style="padding: 0;float:right;">
90
+            <div class="text-left" style="">
91
+              <h1 class="teamh1">孙福高</h1>
92
+              <p class="teamp1">创始人兼艺术总监</p>
93
+              <p class="teamp2">
94
+                10多年视觉设计经验;
95
+                <br />8余年项目管理经验;
96
+                <br />擅长将多种媒体技术与新兴技术结合;
97
+                <br />带队服务于丰盛集团、中国船舶重工集团、银城地产等上市公司及国企。
98
+              </p>
99
+            </div>
98
           </div>
100
           </div>
99
         </div>
101
         </div>
100
-
101
-        <div class="col-xs-6 col-md-3">
102
-          <img src="../assets/image/about/Photo_ly.jpg" class="about-ph1" alt="..." />
103
-        </div>
104
-        <div class="col-xs-6 col-md-3" style="padding: 0">
105
-          <div class="text-left">
106
-            <h1 style="margin-top: 0; font-size: 3.6rem">李阳</h1>
107
-            <p style="font-size: 2.2rem;color: #595757;margin-bottom: 20px">创意总监兼合伙人</p>
108
-            <p style="font-size: 2.2rem">
109
-              职业广告人;
110
-              <br />丰富的产品推广及活动策划经验;
111
-              <br />江苏省省级政府项目主策划;
112
-              <br />带领团队服务于华为,渣打(中国总部),德勤(中国)等重要项目。
113
-            </p>
102
+        <div class="col-xs-12 col-md-6">
103
+          <div class>
104
+            <img src="../assets/image/about/Photo_ly.jpg" class="about-ph1" alt="..." />
105
+          </div>
106
+          <div class style="padding: 0">
107
+            <div class="text-left">
108
+              <h1 class="teamh1">李阳</h1>
109
+              <p class="teamp1">创意总监兼合伙人</p>
110
+              <p class="teamp2">
111
+                职业广告人;
112
+                <br />丰富的产品推广及活动策划经验;
113
+                <br />江苏省省级政府项目主策划;
114
+                <br />带领团队服务于华为,渣打(中国总部),德勤(中国)等重要项目。
115
+              </p>
116
+            </div>
114
           </div>
117
           </div>
115
         </div>
118
         </div>
116
       </div>
119
       </div>
117
-
118
       <div class="row about-3">
120
       <div class="row about-3">
119
         <div class="col-xs-2 col-md-2">
121
         <div class="col-xs-2 col-md-2">
120
           <img src="../assets/image/about/Photo_1.jpg" alt="..." class="ph5" />
122
           <img src="../assets/image/about/Photo_1.jpg" alt="..." class="ph5" />
142
 
144
 
143
 
145
 
144
 <style scoped>
146
 <style scoped>
145
-
146
-.sssss{
147
+.sssss {
147
   padding: 40px 20px;
148
   padding: 40px 20px;
148
 }
149
 }
149
 
150
 
150
 .about-1-img {
151
 .about-1-img {
151
-    width: 100%;
152
-    
152
+  width: 100%;
153
+}
154
+@media (min-width: 768px) {
155
+  .about-ph1 {
153
   }
156
   }
157
+}
154
 
158
 
155
-/* 小屏幕(平板,大于等于 768px) */
156
-@media (min-width: 768px) {
159
+@media (max-width: 768px) {
160
+  .about-2 div{
161
+    margin-top: 40px;
162
+  }
163
+  .teamh1 {
164
+    margin-top: 0;
165
+    /* font-size: 2rem; */
166
+  }
167
+  .teamp1 {
168
+    /* font-size: 1.6rem; */
169
+  }
170
+  .teamp1 {
171
+    /* font-size: 1.6rem; */
172
+  }
157
 }
173
 }
158
 
174
 
159
 /* 中等屏幕(桌面显示器,大于等于 992px) */
175
 /* 中等屏幕(桌面显示器,大于等于 992px) */
171
   .about {
187
   .about {
172
     padding-top: 116px;
188
     padding-top: 116px;
173
   }
189
   }
174
-  p{
175
-    font-size: 2.4rem;
176
-  }
177
-  .st div div .sssss{
190
+
191
+  .st div div .sssss {
178
     padding: 0 79px;
192
     padding: 0 79px;
179
   }
193
   }
180
 
194
 
181
-  h2{
195
+  h2 {
182
     padding-bottom: 30px;
196
     padding-bottom: 30px;
183
   }
197
   }
184
   .about-1-img {
198
   .about-1-img {
185
     width: 175px;
199
     width: 175px;
186
     height: 175px;
200
     height: 175px;
187
   }
201
   }
188
-  .about-ph1 {
189
-    padding: 0 40px 0 40px;
190
-  }
191
-  
192
 
202
 
193
   .abc {
203
   .abc {
194
     border-bottom: 2px solid #e5e5e5;
204
     border-bottom: 2px solid #e5e5e5;
201
   .about-2 {
211
   .about-2 {
202
     padding-top: 123px;
212
     padding-top: 123px;
203
   }
213
   }
204
-  
214
+
205
   .ph5 {
215
   .ph5 {
206
     width: 100%;
216
     width: 100%;
207
     padding: 0px;
217
     padding: 0px;
208
-    
218
+  }
219
+  .teamh1 {
220
+    margin-top: 0;
221
+    font-size: 3.6rem;
222
+  }
223
+  .teamp1 {
224
+    font-size: 2.2rem;
225
+    color: #595757;
226
+    margin-bottom: 20px;
227
+  }
228
+  .teamp2 {
229
+    font-size: 2.2rem;
209
   }
230
   }
210
 }
231
 }
211
 
232
 
212
 /* 大屏幕(大桌面显示器,大于等于 1200px) */
233
 /* 大屏幕(大桌面显示器,大于等于 1200px) */
213
 @media (min-width: 1200px) {
234
 @media (min-width: 1200px) {
214
 }
235
 }
215
-
216
-
217
 </style>
236
 </style>
218
 
237
 
219
 <style lang="less" scoped>
238
 <style lang="less" scoped>
220
- .about-3{
221
-   margin: 0;
222
-    padding-top: 100px;
223
-    padding-left: 40px;
224
-    padding-right: 40px;
225
-    div{
226
-      margin: 0;
227
-      padding: 0;
228
-      img{
229
-        width: 100%;
230
-      }
239
+.about-2 {
240
+  padding-top: 60px;
241
+  div {
242
+    .about-ph1 {
243
+      float: left;
244
+      width: 50%;
245
+      height: 100%;
246
+      padding: 0 40px 0 40px;
231
     }
247
     }
232
- }
233
-
248
+  }
249
+}
234
 
250
 
251
+.about-3 {
252
+  margin: 0;
253
+  padding-top: 100px;
254
+  padding-left: 40px;
255
+  padding-right: 40px;
256
+  div {
257
+    margin: 0;
258
+    padding: 0;
259
+    img {
260
+      width: 100%;
261
+    }
262
+  }
263
+}
235
 </style>
264
 </style>

+ 44
- 26
src/views/Case.vue View File

5
       <!-- width="100%" height="300"> -->
5
       <!-- width="100%" height="300"> -->
6
     </div>
6
     </div>
7
 
7
 
8
-    <div class="border-bottom">
9
-      <div id="bs-example-navbar-collapse-2">
10
-        <button type="button" class="btn-link" style="color:black;font-size: 24px;padding: 25px">全部案例</button>
8
+    <div class="border-bottom comtype">
9
+      <div id>
10
+        <button type="button" @click="addall()" class="btn-link" style="color:black;font-size: 24px;padding: 25px">全部案例</button>
11
         <button v-for="cas in casetype" :key="cas" @click="classification(cas.typeName)" type="button" class="btn-link" style="color:black;font-size: 24px;padding: 25px">{{cas.typeName}}</button>
11
         <button v-for="cas in casetype" :key="cas" @click="classification(cas.typeName)" type="button" class="btn-link" style="color:black;font-size: 24px;padding: 25px">{{cas.typeName}}</button>
12
       </div>
12
       </div>
13
     </div>
13
     </div>
14
 
14
 
15
-    <div class="row mobtype">
15
+    <div class="row mobtype border-bottom">
16
       <div class="col-xs-6">
16
       <div class="col-xs-6">
17
-        <div><p style="line-height:40px">选择想看的案例类型:</p></div>
17
+        <div>
18
+          <p style="line-height:40px">选择想看的案例类型:</p>
19
+        </div>
18
       </div>
20
       </div>
19
       <div class="col-xs-6">
21
       <div class="col-xs-6">
20
         <el-button class="btn-link" @click="drawer = true" type="button" style="margin-left: 16px;">全部案例</el-button>
22
         <el-button class="btn-link" @click="drawer = true" type="button" style="margin-left: 16px;">全部案例</el-button>
22
     </div>
24
     </div>
23
     <el-drawer :visible.sync="drawer" :direction="direction" :before-close="handleClose" :show-close="true" size="80%">
25
     <el-drawer :visible.sync="drawer" :direction="direction" :before-close="handleClose" :show-close="true" size="80%">
24
       <div>
26
       <div>
25
-        <el-row>
26
-          <el-col :span="24" :offset="6">
27
-            <button type="button" class="btn-link" style="color:black;font-size: 24px;">全部案例</button>
27
+        <el-row style="text-align: center;">
28
+          <el-col :span="24">
29
+            <button type="button" @click="addall()" class="btn-link" style="color:black;font-size: 24px;">全部案例</button>
28
           </el-col>
30
           </el-col>
29
-          <el-col :span="24" :offset="6" v-for="cas in casetype" :key="cas" @click="classification(cas.typeName)">
31
+          <el-col :span="24" v-for="cas in casetype" :key="cas" @click="classification(cas.typeName)">
30
             <button type="button" class="btn-link" style="color:black;font-size: 24px">{{cas.typeName}}</button>
32
             <button type="button" class="btn-link" style="color:black;font-size: 24px">{{cas.typeName}}</button>
31
           </el-col>
33
           </el-col>
32
-          <el-col :span="24" :offset="6">
33
-            <button type="button" class="btn btn-default" @click="drawer = flase" style="color:black;font-size: 24px;position:fixed;bottom:100px;">返回</button>
34
+          <el-col :span="24">
35
+            <button type="button" class="btn btn-default" @click="drawer = flase" style="color:black;font-size: 24px;">返回</button>
34
           </el-col>
36
           </el-col>
35
         </el-row>
37
         </el-row>
36
       </div>
38
       </div>
82
 
84
 
83
       allLoaded: false,//数据全部加载
85
       allLoaded: false,//数据全部加载
84
       drawer: false,
86
       drawer: false,
87
+      navdrawer: false,
85
       direction: 'rtl',
88
       direction: 'rtl',
89
+
86
     }
90
     }
87
   },
91
   },
88
   components: {
92
   components: {
120
     }).then(con => {
124
     }).then(con => {
121
       // console.log(con,"124")
125
       // console.log(con,"124")
122
       this.caselist = con.records;
126
       this.caselist = con.records;
127
+      if (con.total <= this.num * con.size) this.allLoaded = true;
128
+
129
+
123
       // window.console.log(this.caselist, "543");
130
       // window.console.log(this.caselist, "543");
124
-    }).catch()
131
+    })
125
 
132
 
126
 
133
 
127
   },
134
   },
131
   },
138
   },
132
 
139
 
133
   methods: {
140
   methods: {
141
+
134
     add (a) {
142
     add (a) {
135
 
143
 
136
       console.log(this.num, "124")
144
       console.log(this.num, "124")
141
       }).then(con => {
149
       }).then(con => {
142
         console.log(con, "124")
150
         console.log(con, "124")
143
         this.caselist = this.caselist.concat(con.records);
151
         this.caselist = this.caselist.concat(con.records);
144
-        if (con.total % 8) this.allLoaded = true;
152
+        this.allLoaded = false;
153
+        if (con.total <= this.num * con.size) this.allLoaded = true;
145
 
154
 
146
         // this.caselist = con.records;
155
         // this.caselist = con.records;
147
 
156
 
155
         params: { pageNum: a, pageSize: 8 }
164
         params: { pageNum: a, pageSize: 8 }
156
       }).then(con => {
165
       }).then(con => {
157
         console.log(con, "124")
166
         console.log(con, "124")
167
+
158
         this.caselist = this.caselist.concat(con.records);
168
         this.caselist = this.caselist.concat(con.records);
159
 
169
 
160
 
170
 
163
       })
173
       })
164
     },
174
     },
165
 
175
 
176
+    addall () {
177
+      this.num = 1;
178
+      add(num);
179
+    }
180
+
166
 
181
 
167
   }
182
   }
168
 
183
 
171
 </script>
186
 </script>
172
 
187
 
173
 <style scoped>
188
 <style scoped>
174
-
175
-.mobtype{
176
-  margin-top: 20px;
177
-}
178
-
179
 .case {
189
 .case {
180
   margin-top: 116px;
190
   margin-top: 116px;
181
 }
191
 }
182
 .border-bottom {
192
 .border-bottom {
183
-  display: none;
193
+  /* display: none; */
184
 }
194
 }
185
 
195
 
186
 .ph {
196
 .ph {
190
   color: #000;
200
   color: #000;
191
 }
201
 }
192
 .case-ph {
202
 .case-ph {
193
-    bottom: 0;
194
-    width: 100%;
203
+  bottom: 0;
204
+  width: 100%;
195
 
205
 
196
-    height: 0;
197
-    padding-bottom: 65%;
198
-    background-size: 100% 100% !important;
206
+  height: 0;
207
+  padding-bottom: 65%;
208
+  background-size: 100% 100% !important;
209
+}
210
+
211
+@media (max-width: 992px) {
212
+  .comtype {
213
+    display: none;
199
   }
214
   }
215
+}
200
 
216
 
201
 @media (min-width: 992px) {
217
 @media (min-width: 992px) {
202
   .main {
218
   .main {
210
   .case {
226
   .case {
211
     background-color: #fafafa;
227
     background-color: #fafafa;
212
   }
228
   }
229
+  .mobtype {
230
+    display: none;
231
+  }
213
 
232
 
214
-  
215
   .btn {
233
   .btn {
216
     font-size: 24px;
234
     font-size: 24px;
217
     margin-top: 88px;
235
     margin-top: 88px;
241
   }
259
   }
242
 
260
 
243
   .border-bottom {
261
   .border-bottom {
244
-    display: block;
262
+    /* display: block; */
245
     font-size: 24px;
263
     font-size: 24px;
246
     border-bottom: 1px solid #bfbfbf;
264
     border-bottom: 1px solid #bfbfbf;
247
     padding: 10px;
265
     padding: 10px;

+ 10
- 3
src/views/Contact.vue View File

66
 
66
 
67
 } */
67
 } */
68
 @media (max-width: 992px) {
68
 @media (max-width: 992px) {
69
+  .contact {
70
+    padding-top: 60px;
71
+  }
69
   .st1 {
72
   .st1 {
70
   }
73
   }
74
+  .img1{
75
+    width: 100%;
76
+  }
71
 }
77
 }
72
 
78
 
73
 @media (min-width: 992px) {
79
 @media (min-width: 992px) {
80
+  .contact {
81
+    padding-top: 116px;
82
+  }
74
   .contact-1 {
83
   .contact-1 {
75
     width: 80%;
84
     width: 80%;
76
     padding: 50px;
85
     padding: 50px;
102
   margin-bottom: -22px;
111
   margin-bottom: -22px;
103
 }
112
 }
104
 
113
 
105
-.contact {
106
-    padding-top: 116px;
107
-  }
114
+
108
 
115
 
109
 
116
 
110
  /*  .contact-1 {
117
  /*  .contact-1 {

+ 99
- 35
src/views/Dynamic.vue View File

1
+
1
 <template>
2
 <template>
2
   <div class="dynamic">
3
   <div class="dynamic">
3
     <div>
4
     <div>
5
       <!-- width="100%" height="300"> -->
6
       <!-- width="100%" height="300"> -->
6
     </div>
7
     </div>
7
 
8
 
8
-    <div class="border-bottom">
9
-      <div>
9
+    <div class="border-bottom comtype" >
10
+      <div id="bs-example-navbar-collapse-2">
10
         <button type="button" class="btn-link" style="color:black;font-size: 24px;padding: 25px">全部案例</button>
11
         <button type="button" class="btn-link" style="color:black;font-size: 24px;padding: 25px">全部案例</button>
11
-        <button v-for="cas in casetype" :key="cas" type="button" class="btn-link" style="color:black;font-size: 24px;padding: 25px">{{cas.typeName}}</button>
12
+        <button v-for="cas in casetype" :key="cas" @click="classification(cas.typeName)" type="button" class="btn-link" style="color:black;font-size: 24px;padding: 25px">{{cas.typeName}}</button>
12
       </div>
13
       </div>
13
     </div>
14
     </div>
14
 
15
 
15
-    <div>
16
-      <div class="row">
17
-        <div class="col-xs-6">
18
-          <div>选择想看的案例类型:</div>
19
-        </div>
20
-        <div class="col-xs-6">
21
-          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false">全部案例</button>
22
-        </div>
16
+    <div class="row mobtype border-bottom">
17
+      <div class="col-xs-6">
18
+        <div><p style="line-height:40px">选择想看的案例类型:</p></div>
19
+      </div>
20
+      <div class="col-xs-6">
21
+        <el-button class="btn-link" @click="drawer = true" type="button" style="margin-left: 16px;">全部案例</el-button>
23
       </div>
22
       </div>
24
     </div>
23
     </div>
24
+    <el-drawer :visible.sync="drawer" :direction="direction" :before-close="handleClose" :show-close="true" size="80%">
25
+      <div>
26
+        <el-row>
27
+          <el-col :span="24" :offset="6">
28
+            <button type="button" class="btn-link" style="color:black;font-size: 24px;">全部案例</button>
29
+          </el-col>
30
+          <el-col :span="24" :offset="6" v-for="cas in casetype" :key="cas" @click="classification(cas.typeName)">
31
+            <button type="button" class="btn-link" style="color:black;font-size: 24px">{{cas.typeName}}</button>
32
+          </el-col>
33
+          <el-col :span="24" :offset="6">
34
+            <button type="button" class="btn btn-default" @click="drawer = flase" style="color:black;font-size: 24px;position:fixed;bottom:100px;">返回</button>
35
+          </el-col>
36
+        </el-row>
37
+      </div>
38
+    </el-drawer>
25
 
39
 
26
     <div class="contanier center-block dyn-main">
40
     <div class="contanier center-block dyn-main">
27
       <div class="row">
41
       <div class="row">
29
           <div class="col-md-6 col-xs-6 ph">
43
           <div class="col-md-6 col-xs-6 ph">
30
             <div class="ph-houver">
44
             <div class="ph-houver">
31
               <a href="/details" style="text-decoration:none;">
45
               <a href="/details" style="text-decoration:none;">
32
-                <img :src="item.caseCoverImg" alt style="width:100%;" />
46
+                <div :style="{background: `url(${item.caseCoverImg})`}" class="case-ph"></div>
33
                 <div class="text-left">
47
                 <div class="text-left">
34
                   <h2>{{item.caseTitle}}</h2>
48
                   <h2>{{item.caseTitle}}</h2>
35
                   <P>{{item.caseSummary}}</P>
49
                   <P>{{item.caseSummary}}</P>
42
     </div>
56
     </div>
43
 
57
 
44
     <div>
58
     <div>
45
-      <button type="button" class="btn btn-default" @click="add">加载更多</button>
59
+      <button type="button" v-show="!allLoaded" class="btn btn-default" @click="add(++num)">加载更多</button>
46
     </div>
60
     </div>
47
 
61
 
48
-    <div v-if="show">
62
+    <div v-show="allLoaded">
49
       <p>已经到底了~更多案例尽请期待~</p>
63
       <p>已经到底了~更多案例尽请期待~</p>
50
     </div>
64
     </div>
51
   </div>
65
   </div>
66
       casetype: [],
80
       casetype: [],
67
       caselist: [],
81
       caselist: [],
68
       num: 1,
82
       num: 1,
69
-      show: true,
83
+
84
+      allLoaded: false,//数据全部加载
85
+      drawer: false,
86
+      direction: 'rtl',
87
+      
70
     }
88
     }
71
   },
89
   },
72
   components: {
90
   components: {
77
     // window.console.log(this.cover, "543");
95
     // window.console.log(this.cover, "543");
78
     // 封面
96
     // 封面
79
     request({
97
     request({
80
-      ...apis.case.cover,
98
+      ...apis.dynamic.cover,
81
 
99
 
82
     }).then(data => {
100
     }).then(data => {
83
       this.cover = data[0];
101
       this.cover = data[0];
84
     })
102
     })
85
 
103
 
86
 
104
 
87
-    // axios.get('http://localhost:8080/pc/case/cover')
105
+    // axios.get('http://localhost:8080/pc/dynamic/cover')
88
 
106
 
89
     // 分类
107
     // 分类
90
-    // axios.get('http://localhost:8080/pc/caseType/list')
108
+    // axios.get('http://localhost:8080/pc/dynamicType/list')
91
     request({
109
     request({
92
-      ...apis.caseType.list,
110
+      ...apis.dynamicType.list,
93
     })
111
     })
94
       .then(res => {
112
       .then(res => {
95
-        
113
+
96
         this.casetype = res.records;
114
         this.casetype = res.records;
97
 
115
 
98
       })
116
       })
100
     request({
118
     request({
101
       ...apis.case.list,
119
       ...apis.case.list,
102
       urlData: { type: 'case' },
120
       urlData: { type: 'case' },
103
-      params: { pageNum: 1, pageSize: 8 }
121
+      params: { pageNum: this.num, pageSize: 8 }
104
     }).then(con => {
122
     }).then(con => {
105
       // console.log(con,"124")
123
       // console.log(con,"124")
106
       this.caselist = con.records;
124
       this.caselist = con.records;
115
   },
133
   },
116
 
134
 
117
   methods: {
135
   methods: {
118
-    add () {
136
+    add (a) {
137
+
138
+      console.log(this.num, "124")
139
+      request({
140
+        ...apis.case.list,
141
+        urlData: { type: 'case' },
142
+        params: { pageNum: a, pageSize: 8 }
143
+      }).then(con => {
144
+        console.log(con, "124")
145
+        this.caselist = this.caselist.concat(con.records);
146
+        if (con.total % 8) this.allLoaded = true;
147
+
148
+        // this.caselist = con.records;
149
+
150
+      })
151
+    },
152
+
153
+    classification (Type) {
154
+      request({
155
+        ...apis.case.list,
156
+        urlData: { type: 'case' },
157
+        params: { pageNum: a, pageSize: 8 }
158
+      }).then(con => {
159
+        console.log(con, "124")
160
+        this.caselist = this.caselist.concat(con.records);
161
+
162
+
163
+
164
+
165
+      })
166
+    },
167
+
119
 
168
 
120
-      // axios.get('http://localhost:8080/pc/case/case/list/?pageNum=2&pageSize=8')
121
-      //   .then(con => {
122
-      //     this.caselist = con.data.data.records;
123
-      //     window.console.log(this.caselist, "543");
124
-      //   })
125
-    }
126
   }
169
   }
127
 
170
 
128
 
171
 
130
 </script>
173
 </script>
131
 
174
 
132
 <style scoped>
175
 <style scoped>
176
+
177
+
178
+
179
+.dynamic {
180
+  margin-top: 116px;
181
+}
133
 .border-bottom {
182
 .border-bottom {
134
-  display: none;
183
+  /* display: none; */
135
 }
184
 }
136
 
185
 
137
 .ph {
186
 .ph {
140
 .text-left {
189
 .text-left {
141
   color: #000;
190
   color: #000;
142
 }
191
 }
192
+.case-ph {
193
+    bottom: 0;
194
+    width: 100%;
143
 
195
 
144
-@media (min-width: 992px) {
145
-  .dynamic {
146
-    padding-top: 116px;
196
+    height: 0;
197
+    padding-bottom: 65%;
198
+    background-size: 100% 100% !important;
147
   }
199
   }
200
+
201
+  @media (max-width: 992px) {
202
+    .comtype{
203
+      display: none;
204
+    }
205
+    
206
+  }
207
+
208
+@media (min-width: 992px) {
148
   .main {
209
   .main {
149
     display: -webkit-flex; /* Safari */
210
     display: -webkit-flex; /* Safari */
150
     display: flex;
211
     display: flex;
156
   .dynamic {
217
   .dynamic {
157
     background-color: #fafafa;
218
     background-color: #fafafa;
158
   }
219
   }
159
-
220
+.mobtype{
221
+  display: none;
222
+}
223
+  
160
   .btn {
224
   .btn {
161
     font-size: 24px;
225
     font-size: 24px;
162
     margin-top: 88px;
226
     margin-top: 88px;
186
   }
250
   }
187
 
251
 
188
   .border-bottom {
252
   .border-bottom {
189
-    display: block;
253
+    /* display: block; */
190
     font-size: 24px;
254
     font-size: 24px;
191
     border-bottom: 1px solid #bfbfbf;
255
     border-bottom: 1px solid #bfbfbf;
192
     padding: 10px;
256
     padding: 10px;
193
   }
257
   }
194
 }
258
 }
195
-</style>
259
+</style>

+ 57
- 13
src/views/Home.vue View File

36
       </div>
36
       </div>
37
     </nav>
37
     </nav>
38
 
38
 
39
-    <a href="#pos">
39
+    
40
       <div class="aarow_box animated aarowMove">
40
       <div class="aarow_box animated aarowMove">
41
-        <div class="aarow"></div>
41
+        <div class="aarow" @click="arrow()"></div>
42
       </div>
42
       </div>
43
-    </a>
43
+   
44
 
44
 
45
     <div class="contanier next-page">
45
     <div class="contanier next-page">
46
       <div class="row">
46
       <div class="row">
48
           <Wheelplanting></Wheelplanting>
48
           <Wheelplanting></Wheelplanting>
49
         </div>
49
         </div>
50
       </div>
50
       </div>
51
-      <div name="pos"></div>
51
+      <!-- <div class="contanier next-page1">
52
+      <div class="row">
53
+        <div class="col-md-12 home-wheel">
54
+          <Wheelplanting1></Wheelplanting1>
55
+        </div>
56
+      </div> -->
57
+
58
+
59
+
60
+      <div id="pos" style="margin:116px"></div>
52
 
61
 
53
       <div class="row">
62
       <div class="row">
54
         <div class="col-md-12" style="padding:0;width: 100%;">
63
         <div class="col-md-12" style="padding:0;width: 100%;">
129
         <div class="col-xs-6 col-md-3 home-case" v-for="(item,index) in caselist" :key="index">
138
         <div class="col-xs-6 col-md-3 home-case" v-for="(item,index) in caselist" :key="index">
130
           <a href="/details">
139
           <a href="/details">
131
             <div class="st4" :style="{background: `url(${item.caseCoverImg})`}">
140
             <div class="st4" :style="{background: `url(${item.caseCoverImg})`}">
132
-              <div class="casetitle">{{item.caseTitle}}</div>
141
+              <div class="casetitle">
142
+                <p>{{item.caseTitle}}</p>
143
+              </div>
133
             </div>
144
             </div>
134
           </a>
145
           </a>
135
         </div>
146
         </div>
183
 
194
 
184
 // const times = x => '*'.repeat(x - 1).split('*')
195
 // const times = x => '*'.repeat(x - 1).split('*')
185
 
196
 
197
+import { scrollIntoView } from 'scroll-js' 
198
+
186
 import Wheelplanting from "@/components/Wheelplanting.vue";
199
 import Wheelplanting from "@/components/Wheelplanting.vue";
187
 // import Business from "@/components/Business.vue";
200
 // import Business from "@/components/Business.vue";
188
-
201
+// import Wheelplanting1 from "@/components/Wheelplanting1.vue";
189
 import request from '../../utils/request'
202
 import request from '../../utils/request'
190
 import apis from '../config/api';
203
 import apis from '../config/api';
191
 export default {
204
 export default {
213
   },
226
   },
214
   components: {
227
   components: {
215
     Wheelplanting,
228
     Wheelplanting,
229
+    // Wheelplanting1,
216
     // Business,
230
     // Business,
217
   },
231
   },
218
   mounted () {
232
   mounted () {
219
     window.addEventListener('scroll', () => {
233
     window.addEventListener('scroll', () => {
220
       this.scrolled = (document.documentElement.scrollTop || document.body.scrollTop) > 300
234
       this.scrolled = (document.documentElement.scrollTop || document.body.scrollTop) > 300
221
     })
235
     })
236
+
237
+    
238
+  },
239
+  methods:{
240
+      arrow(){
241
+        // document.getElementsByClassName('home')[0].scrollTop=100;
242
+        // document.querySelector('#pos').scrollTo()
243
+        scrollIntoView(document.querySelector('#pos'), document.body, { behavior: 'smooth' })
244
+      }
222
   },
245
   },
223
 
246
 
224
   created () {
247
   created () {
255
       urlData: { type: 'movement' },
278
       urlData: { type: 'movement' },
256
       params: { pageNum: 1, pageSize: 4, topping: 1 }
279
       params: { pageNum: 1, pageSize: 4, topping: 1 }
257
     }).then(con => {
280
     }).then(con => {
258
-      console.log(con, "124")
281
+      // console.log(con, "124")
259
       this.dynamiclist = con.records;
282
       this.dynamiclist = con.records;
260
-      window.console.log(this.dynamiclist, "543");
283
+      // window.console.log(this.dynamiclist, "543");
261
     })
284
     })
262
   }
285
   }
263
 };
286
 };
307
   .aarow_box {
330
   .aarow_box {
308
     display: none;
331
     display: none;
309
   }
332
   }
310
-  .aarow{
333
+  .aarow {
311
     display: none;
334
     display: none;
312
   }
335
   }
313
   .home-case {
336
   .home-case {
361
     border: none;
384
     border: none;
362
   }
385
   }
363
 
386
 
364
-  .st4:hover .casetitle {
365
-    display: block;
366
-  }
387
+ .top-news{
388
+   margin-top: 110px;
389
+ }
390
+
367
   .aarow_box {
391
   .aarow_box {
368
     width: 26px;
392
     width: 26px;
369
     height: 26px;
393
     height: 26px;
469
 
493
 
470
   padding-bottom: 100%;
494
   padding-bottom: 100%;
471
   background-size: 100% 100% !important;
495
   background-size: 100% 100% !important;
496
+  position: relative;
472
 
497
 
473
   margin: 0;
498
   margin: 0;
474
 }
499
 }
475
-.casetitle {
500
+.st4 .casetitle {
476
   display: none;
501
   display: none;
477
 }
502
 }
478
 
503
 
504
+.st4:hover .casetitle {
505
+  position: absolute;
506
+  width: 100%;
507
+  height: 100%;
508
+  float: left;
509
+  padding: 0 auto;
510
+  background: rgba(0, 0, 0, 0.7);
511
+  align-items: center;
512
+  display: -webkit-flex;
513
+  display: flex;
514
+
515
+  text-align: center;
516
+}
517
+.st4:hover .casetitle p {
518
+  text-align: center;
519
+  display: block;
520
+  color: #fff;
521
+  width: 100%;
522
+}
479
 .home-news {
523
 .home-news {
480
   padding: 0 6px;
524
   padding: 0 6px;
481
   margin-bottom: 12px;
525
   margin-bottom: 12px;

+ 19
- 0
vim.exe.stackdump View File

1
+Stack trace:
2
+Frame        Function    Args
3
+00180000000  0018005E0DE (00180230639, 00180230C39, 001802412F0, 000FFFFB740)
4
+00180000000  001800468F9 (CCCCCC00009CC1, FF783B00767676, D6D661000CC616, 000002AA9E0)
5
+00180000000  00180046932 (00180230616, 000000001E7, 001802412F0, 76767600CCCCCC)
6
+00180000000  00180043543 (00000000000, 00180000000, 7FF96E14D6DE, 001800004EC)
7
+00180000000  0018006BF01 (CCCCCC00009CC1, FF783B00767676, D6D661000CC616, 9E00B4005648E7)
8
+00180000000  0018006CD8E (00000000000, 00000000000, 00000000000, 00000000000)
9
+00180000000  0018006ED24 (00000000000, 00000000008, 0006C31E290, 00000000000)
10
+00000000001  00180137221 (0010065D540, 00000000008, 00000000000, 00000000000)
11
+00000000001  0018011DDBB (0010065D540, 00000000008, 00000000000, 00000000000)
12
+00000000001  001004F77E4 (00100575E0A, 00100663D08, 00000000000, 00100663D0C)
13
+00000000001  001005820F3 (00000000008, 00100664140, 00000000000, 00000000000)
14
+00000000001  00100576D86 (00000000000, 0005B19FA13, 000179783A0, 00000010000)
15
+00000000001  001005D4CEB (000FFFFCCD0, 001801D6A60, 00100000001, 00000000001)
16
+0060004F7A0  001005E218A (00000000020, 30001010000FF00, 00180047EB8, 00180046E80)
17
+000FFFFCCD0  00180047F24 (00000000000, 00000000000, 00000000000, 00000000000)
18
+00000000000  00180045A03 (00000000000, 00000000000, 00000000000, 00000000000)
19
+End of stack trace (more stack frames may be present)