├── README.md └── bottom-navigation ├── App.vue ├── common ├── icon.css ├── mui.css ├── uni.css ├── util.js └── zanui.wxss ├── main.js ├── manifest.json ├── pages.json ├── pages └── tabs │ └── tabs.vue └── unpackage └── dist └── dev └── app-plus └── bottom-navigation ├── __uniappchooselocation.html ├── __uniappmap.html ├── __uniappmarker.png ├── __uniappopenlocation.html ├── __uniappscan.html ├── __uniappservice.html ├── __uniappsuccess.png ├── __uniappview.html ├── app-service.js ├── app-view.js ├── manifest.json └── pages └── tabs └── tabs.js /README.md: -------------------------------------------------------------------------------- 1 | # bottom-navigation 2 | uni-app 自定义底部导航栏,通过swipe组件实现左右滑动切换页面 3 | ![示例图](https://xywqqcom.oss-cn-shenzhen.aliyuncs.com/153505548678336.jpg) 4 | -------------------------------------------------------------------------------- /bottom-navigation/App.vue: -------------------------------------------------------------------------------- 1 | 14 | 15 | 26 | -------------------------------------------------------------------------------- /bottom-navigation/common/icon.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: uniicons; 3 | font-weight: normal; 4 | font-style: normal; 5 | src: url('https://img-cdn-qiniu.dcloud.net.cn/fonts/uni.ttf') format('truetype'); 6 | } 7 | 8 | .uni-icon { 9 | font-family: uniicons; 10 | font-size: 48px; 11 | font-weight: normal; 12 | font-style: normal; 13 | line-height: 1; 14 | display: inline-block; 15 | text-decoration: none; 16 | -webkit-font-smoothing: antialiased; 17 | } 18 | 19 | .uni-icon.uni-active { 20 | color: #007aff; 21 | } 22 | 23 | .uni-icon-contact:before { 24 | content: '\e100'; 25 | } 26 | 27 | .uni-icon-person:before { 28 | content: '\e101'; 29 | } 30 | 31 | .uni-icon-personadd:before { 32 | content: '\e102'; 33 | } 34 | 35 | .uni-icon-contact-filled:before { 36 | content: '\e130'; 37 | } 38 | 39 | .uni-icon-person-filled:before { 40 | content: '\e131'; 41 | } 42 | 43 | .uni-icon-personadd-filled:before { 44 | content: '\e132'; 45 | } 46 | 47 | .uni-icon-phone:before { 48 | content: '\e200'; 49 | } 50 | 51 | .uni-icon-email:before { 52 | content: '\e201'; 53 | } 54 | 55 | .uni-icon-chatbubble:before { 56 | content: '\e202'; 57 | } 58 | 59 | .uni-icon-chatboxes:before { 60 | content: '\e203'; 61 | } 62 | 63 | .uni-icon-phone-filled:before { 64 | content: '\e230'; 65 | } 66 | 67 | .uni-icon-email-filled:before { 68 | content: '\e231'; 69 | } 70 | 71 | .uni-icon-chatbubble-filled:before { 72 | content: '\e232'; 73 | } 74 | 75 | .uni-icon-chatboxes-filled:before { 76 | content: '\e233'; 77 | } 78 | 79 | .uni-icon-weibo:before { 80 | content: '\e260'; 81 | } 82 | 83 | .uni-icon-weixin:before { 84 | content: '\e261'; 85 | } 86 | 87 | .uni-icon-pengyouquan:before { 88 | content: '\e262'; 89 | } 90 | 91 | .uni-icon-chat:before { 92 | content: '\e263'; 93 | } 94 | 95 | .uni-icon-qq:before { 96 | content: '\e264'; 97 | } 98 | 99 | .uni-icon-videocam:before { 100 | content: '\e300'; 101 | } 102 | 103 | .uni-icon-camera:before { 104 | content: '\e301'; 105 | } 106 | 107 | .uni-icon-mic:before { 108 | content: '\e302'; 109 | } 110 | 111 | .uni-icon-location:before { 112 | content: '\e303'; 113 | } 114 | 115 | .uni-icon-mic-filled:before, 116 | .uni-icon-speech:before { 117 | content: '\e332'; 118 | } 119 | 120 | .uni-icon-location-filled:before { 121 | content: '\e333'; 122 | } 123 | 124 | .uni-icon-micoff:before { 125 | content: '\e360'; 126 | } 127 | 128 | .uni-icon-image:before { 129 | content: '\e363'; 130 | } 131 | 132 | .uni-icon-map:before { 133 | content: '\e364'; 134 | } 135 | 136 | .uni-icon-compose:before { 137 | content: '\e400'; 138 | } 139 | 140 | .uni-icon-trash:before { 141 | content: '\e401'; 142 | } 143 | 144 | .uni-icon-upload:before { 145 | content: '\e402'; 146 | } 147 | 148 | .uni-icon-download:before { 149 | content: '\e403'; 150 | } 151 | 152 | .uni-icon-close:before { 153 | content: '\e404'; 154 | } 155 | 156 | .uni-icon-redo:before { 157 | content: '\e405'; 158 | } 159 | 160 | .uni-icon-undo:before { 161 | content: '\e406'; 162 | } 163 | 164 | .uni-icon-refresh:before { 165 | content: '\e407'; 166 | } 167 | 168 | .uni-icon-star:before { 169 | content: '\e408'; 170 | } 171 | 172 | .uni-icon-plus:before { 173 | content: '\e409'; 174 | } 175 | 176 | .uni-icon-minus:before { 177 | content: '\e410'; 178 | } 179 | 180 | .uni-icon-circle:before, 181 | .uni-icon-checkbox:before { 182 | content: '\e411'; 183 | } 184 | 185 | .uni-icon-close-filled:before, 186 | .uni-icon-clear:before { 187 | content: '\e434'; 188 | } 189 | 190 | .uni-icon-refresh-filled:before { 191 | content: '\e437'; 192 | } 193 | 194 | .uni-icon-star-filled:before { 195 | content: '\e438'; 196 | } 197 | 198 | .uni-icon-plus-filled:before { 199 | content: '\e439'; 200 | } 201 | 202 | .uni-icon-minus-filled:before { 203 | content: '\e440'; 204 | } 205 | 206 | .uni-icon-circle-filled:before { 207 | content: '\e441'; 208 | } 209 | 210 | .uni-icon-checkbox-filled:before { 211 | content: '\e442'; 212 | } 213 | 214 | .uni-icon-closeempty:before { 215 | content: '\e460'; 216 | } 217 | 218 | .uni-icon-refreshempty:before { 219 | content: '\e461'; 220 | } 221 | 222 | .uni-icon-reload:before { 223 | content: '\e462'; 224 | } 225 | 226 | .uni-icon-starhalf:before { 227 | content: '\e463'; 228 | } 229 | 230 | .uni-icon-spinner:before { 231 | content: '\e464'; 232 | } 233 | 234 | .uni-icon-spinner-cycle:before { 235 | content: '\e465'; 236 | } 237 | 238 | .uni-icon-search:before { 239 | content: '\e466'; 240 | } 241 | 242 | .uni-icon-plusempty:before { 243 | content: '\e468'; 244 | } 245 | 246 | .uni-icon-forward:before { 247 | content: '\e470'; 248 | } 249 | 250 | .uni-icon-back:before, 251 | .uni-icon-left-nav:before { 252 | content: '\e471'; 253 | } 254 | 255 | .uni-icon-checkmarkempty:before { 256 | content: '\e472'; 257 | } 258 | 259 | .uni-icon-home:before { 260 | content: '\e500'; 261 | } 262 | 263 | .uni-icon-navigate:before { 264 | content: '\e501'; 265 | } 266 | 267 | .uni-icon-gear:before { 268 | content: '\e502'; 269 | } 270 | 271 | .uni-icon-paperplane:before { 272 | content: '\e503'; 273 | } 274 | 275 | .uni-icon-info:before { 276 | content: '\e504'; 277 | } 278 | 279 | .uni-icon-help:before { 280 | content: '\e505'; 281 | } 282 | 283 | .uni-icon-locked:before { 284 | content: '\e506'; 285 | } 286 | 287 | .uni-icon-more:before { 288 | content: '\e507'; 289 | } 290 | 291 | .uni-icon-flag:before { 292 | content: '\e508'; 293 | } 294 | 295 | .uni-icon-home-filled:before { 296 | content: '\e530'; 297 | } 298 | 299 | .uni-icon-gear-filled:before { 300 | content: '\e532'; 301 | } 302 | 303 | .uni-icon-info-filled:before { 304 | content: '\e534'; 305 | } 306 | 307 | .uni-icon-help-filled:before { 308 | content: '\e535'; 309 | } 310 | 311 | .uni-icon-more-filled:before { 312 | content: '\e537'; 313 | } 314 | 315 | .uni-icon-settings:before { 316 | content: '\e560'; 317 | } 318 | 319 | .uni-icon-list:before { 320 | content: '\e562'; 321 | } 322 | 323 | .uni-icon-bars:before { 324 | content: '\e563'; 325 | } 326 | 327 | .uni-icon-loop:before { 328 | content: '\e565'; 329 | } 330 | 331 | .uni-icon-paperclip:before { 332 | content: '\e567'; 333 | } 334 | 335 | .uni-icon-eye:before { 336 | content: '\e568'; 337 | } 338 | 339 | .uni-icon-arrowup:before { 340 | content: '\e580'; 341 | } 342 | 343 | .uni-icon-arrowdown:before { 344 | content: '\e581'; 345 | } 346 | 347 | .uni-icon-arrowleft:before { 348 | content: '\e582'; 349 | } 350 | 351 | .uni-icon-arrowright:before { 352 | content: '\e583'; 353 | } 354 | 355 | .uni-icon-arrowthinup:before { 356 | content: '\e584'; 357 | } 358 | 359 | .uni-icon-arrowthindown:before { 360 | content: '\e585'; 361 | } 362 | 363 | .uni-icon-arrowthinleft:before { 364 | content: '\e586'; 365 | } 366 | 367 | .uni-icon-arrowthinright:before { 368 | content: '\e587'; 369 | } 370 | 371 | .uni-icon-pulldown:before { 372 | content: '\e588'; 373 | } 374 | -------------------------------------------------------------------------------- /bottom-navigation/common/uni.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: uniicons; 3 | font-weight: normal; 4 | font-style: normal; 5 | src: url('https://img-cdn-qiniu.dcloud.net.cn/fonts/uni.ttf') format('truetype'); 6 | } 7 | 8 | 9 | 10 | 11 | /*通用 */ 12 | 13 | .uni-flex { 14 | display: flex; 15 | flex-direction: row; 16 | } 17 | 18 | .uni-flex-item { 19 | flex: 1; 20 | } 21 | 22 | .uni-row { 23 | flex-direction: row; 24 | } 25 | 26 | .uni-column { 27 | flex-direction: column; 28 | } 29 | 30 | .uni-h6 { 31 | font-size: 24px; 32 | color: #8f8f94; 33 | } 34 | 35 | .uni-h5 { 36 | font-size: 28px; 37 | color: #8f8f94; 38 | } 39 | 40 | .uni-h4 { 41 | font-size: 36px; 42 | } 43 | 44 | .uni-h3 { 45 | font-size: 48px; 46 | font-weight: 600; 47 | } 48 | 49 | .uni-h2 { 50 | font-size: 60px; 51 | font-weight: 600; 52 | } 53 | 54 | .uni-h1 { 55 | font-size: 72px; 56 | font-weight: 600; 57 | } 58 | 59 | .uni-ellipsis { 60 | overflow: hidden; 61 | white-space: nowrap; 62 | text-overflow: ellipsis; 63 | } 64 | 65 | .uni-ellipsis-2 { 66 | display: -webkit-box; 67 | overflow: hidden; 68 | 69 | white-space: normal !important; 70 | text-overflow: ellipsis; 71 | word-wrap: break-word; 72 | 73 | -webkit-line-clamp: 2; 74 | -webkit-box-orient: vertical; 75 | } 76 | 77 | .uni-input { 78 | height: 80px; 79 | min-height: 80px; 80 | line-height: 80px; 81 | } 82 | 83 | .uni-label { 84 | width: 210px; 85 | word-wrap: break-word; 86 | word-break: break-all; 87 | } 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | /*数字角标 */ 96 | 97 | .uni-badge { 98 | padding: 4px 14px; 99 | font-size: 24px; 100 | height: 24px; 101 | line-height: 1; 102 | color: #333; 103 | background-color: rgba(0, 0, 0, .15); 104 | border-radius: 200px; 105 | } 106 | 107 | .uni-badge.uni-badge-inverted { 108 | padding: 0 10px 0 0; 109 | color: #929292; 110 | background-color: transparent 111 | } 112 | 113 | .uni-badge-primary { 114 | color: #fff; 115 | background-color: #007aff 116 | } 117 | 118 | .uni-badge-blue.uni-badge-inverted, 119 | .uni-badge-primary.uni-badge-inverted { 120 | color: #007aff; 121 | background-color: transparent 122 | } 123 | 124 | .uni-badge-green, 125 | .uni-badge-success { 126 | color: #fff; 127 | background-color: #4cd964; 128 | } 129 | 130 | .uni-badge-green.uni-badge-inverted, 131 | .uni-badge-success.uni-badge-inverted { 132 | color: #4cd964; 133 | background-color: transparent 134 | } 135 | 136 | .uni-badge-warning, 137 | .uni-badge-yellow { 138 | color: #fff; 139 | background-color: #f0ad4e 140 | } 141 | 142 | .uni-badge-warning.uni-badge-inverted, 143 | .uni-badge-yellow.uni-badge-inverted { 144 | color: #f0ad4e; 145 | background-color: transparent 146 | } 147 | 148 | .uni-badge-danger, 149 | .uni-badge-red { 150 | color: #fff; 151 | background-color: #dd524d 152 | } 153 | 154 | .uni-badge-danger.uni-badge-inverted, 155 | .uni-badge-red.uni-badge-inverted { 156 | color: #dd524d; 157 | background-color: transparent 158 | } 159 | 160 | .uni-badge-purple, 161 | .uni-badge-royal { 162 | color: #fff; 163 | background-color: #8a6de9 164 | } 165 | 166 | .uni-badge-purple.uni-badge-inverted, 167 | .uni-badge-royal.uni-badge-inverted { 168 | color: #8a6de9; 169 | background-color: transparent 170 | } 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | /*折叠面板 */ 179 | 180 | .uni-collapse-content { 181 | height: 0; 182 | width: 100%; 183 | overflow: hidden; 184 | } 185 | 186 | .uni-collapse-content.uni-active { 187 | height: auto; 188 | } 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | /*卡片视图 */ 197 | 198 | .uni-card { 199 | background: #fff; 200 | border-radius: 8px; 201 | margin: 20px; 202 | position: relative; 203 | box-shadow: 0 2px 4px rgba(0, 0, 0, .3); 204 | } 205 | 206 | .uni-card-content { 207 | font-size: 30px; 208 | } 209 | 210 | .uni-card-content-inner { 211 | position: relative; 212 | padding: 30px; 213 | } 214 | 215 | .uni-card-footer, 216 | .uni-card-header { 217 | position: relative; 218 | display: flex; 219 | min-height: 50px; 220 | padding: 20px 30px; 221 | justify-content: space-between; 222 | align-items: center; 223 | } 224 | 225 | .uni-card-header { 226 | font-size: 36px; 227 | } 228 | 229 | .uni-card-footer { 230 | color: #6d6d72; 231 | } 232 | 233 | .uni-card-footer:before, 234 | .uni-card-header:after { 235 | position: absolute; 236 | top: 0; 237 | right: 0; 238 | left: 0; 239 | height: 2px; 240 | content: ''; 241 | -webkit-transform: scaleY(.5); 242 | transform: scaleY(.5); 243 | background-color: #c8c7cc; 244 | } 245 | 246 | .uni-card-header:after { 247 | top: auto; 248 | bottom: 0; 249 | } 250 | 251 | .uni-card-media { 252 | justify-content: flex-start; 253 | } 254 | 255 | .uni-card-media-logo { 256 | height: 84px; 257 | width: 84px; 258 | margin-right: 20px; 259 | } 260 | 261 | .uni-card-media-body { 262 | height: 84px; 263 | display: flex; 264 | flex-direction: column; 265 | justify-content: space-between; 266 | align-items: flex-start; 267 | } 268 | 269 | .uni-card-media-text-top { 270 | line-height: 36px; 271 | font-size: 34px; 272 | } 273 | 274 | .uni-card-media-text-bottom { 275 | line-height: 30px; 276 | font-size: 28px; 277 | color: #8f8f94; 278 | } 279 | 280 | .uni-card-link { 281 | color: #007AFF; 282 | } 283 | 284 | 285 | 286 | 287 | /* 列表 */ 288 | 289 | .uni-list { 290 | background-color: #FFFFFF; 291 | position: relative; 292 | width: 100%; 293 | display: flex; 294 | flex-direction: column; 295 | } 296 | 297 | .uni-list:after { 298 | position: absolute; 299 | z-index: 10; 300 | right: 0; 301 | bottom: 0; 302 | left: 0; 303 | height: 1px; 304 | content: ''; 305 | -webkit-transform: scaleY(.5); 306 | transform: scaleY(.5); 307 | background-color: #c8c7cc; 308 | } 309 | 310 | .uni-list:before { 311 | position: absolute; 312 | z-index: 10; 313 | right: 0; 314 | top: 0; 315 | left: 0; 316 | height: 1px; 317 | content: ''; 318 | -webkit-transform: scaleY(.5); 319 | transform: scaleY(.5); 320 | background-color: #c8c7cc; 321 | } 322 | 323 | .uni-list-cell { 324 | position: relative; 325 | display: flex; 326 | flex-direction: row; 327 | justify-content: space-between; 328 | align-items: center; 329 | } 330 | 331 | .uni-list-cell-hover { 332 | background-color: #eee; 333 | } 334 | 335 | .uni-list-cell-pd { 336 | padding: 22px 30px; 337 | } 338 | 339 | .uni-list-cell-left { 340 | padding: 0 30px; 341 | } 342 | 343 | .uni-list-cell-db, 344 | .uni-list-cell-right { 345 | flex: 1; 346 | } 347 | 348 | .uni-list-cell:after { 349 | position: absolute; 350 | right: 0; 351 | bottom: 0; 352 | left: 30px; 353 | height: 1px; 354 | content: ''; 355 | -webkit-transform: scaleY(.5); 356 | transform: scaleY(.5); 357 | background-color: #c8c7cc; 358 | } 359 | 360 | .uni-list .uni-list-cell:last-child:after { 361 | height: 0px; 362 | } 363 | 364 | .uni-list-cell-last.uni-list-cell:after { 365 | height: 0px; 366 | } 367 | 368 | .uni-list-cell-divider { 369 | position: relative; 370 | display: flex; 371 | color: #999; 372 | background-color: #f7f7f7; 373 | padding: 10px 20px; 374 | } 375 | 376 | .uni-list-cell-divider:before { 377 | position: absolute; 378 | right: 0; 379 | top: 0; 380 | left: 0px; 381 | height: 1px; 382 | content: ''; 383 | -webkit-transform: scaleY(.5); 384 | transform: scaleY(.5); 385 | background-color: #c8c7cc; 386 | } 387 | 388 | .uni-list-cell-divider:after { 389 | position: absolute; 390 | right: 0; 391 | bottom: 0; 392 | left: 0px; 393 | height: 1px; 394 | content: ''; 395 | -webkit-transform: scaleY(.5); 396 | transform: scaleY(.5); 397 | background-color: #c8c7cc; 398 | } 399 | 400 | .uni-list-cell-navigate { 401 | padding: 22px 30px; 402 | line-height: 48px; 403 | position: relative; 404 | display: flex; 405 | box-sizing: border-box; 406 | width: 100%; 407 | flex: 1; 408 | justify-content: space-between; 409 | align-items: center; 410 | } 411 | 412 | .uni-list-cell-navigate { 413 | padding-right: 36px; 414 | } 415 | 416 | .uni-navigate-badge { 417 | margin-right: 20px; 418 | } 419 | 420 | .uni-list-cell-navigate.uni-navigate-right:after { 421 | font-family: uniicons; 422 | content: '\e583'; 423 | position: absolute; 424 | right: 24px; 425 | top: 50%; 426 | color: #bbb; 427 | -webkit-transform: translateY(-50%); 428 | transform: translateY(-50%); 429 | } 430 | 431 | .uni-list-cell-navigate.uni-navigate-bottom:after { 432 | font-family: uniicons; 433 | content: '\e581'; 434 | position: absolute; 435 | right: 24px; 436 | top: 50%; 437 | color: #bbb; 438 | -webkit-transform: translateY(-50%); 439 | transform: translateY(-50%); 440 | } 441 | 442 | .uni-list-cell-navigate.uni-navigate-bottom.uni-active:after { 443 | font-family: uniicons; 444 | content: '\e580'; 445 | position: absolute; 446 | right: 24px; 447 | top: 50%; 448 | color: #bbb; 449 | -webkit-transform: translateY(-50%); 450 | transform: translateY(-50%); 451 | } 452 | 453 | .uni-collapse.uni-list-cell { 454 | flex-direction: column; 455 | } 456 | 457 | .uni-list-cell-navigate.uni-active { 458 | background: #eee; 459 | } 460 | 461 | .uni-list.uni-collapse { 462 | box-sizing: border-box; 463 | height: 0; 464 | overflow: hidden; 465 | } 466 | 467 | .uni-collapse .uni-list-cell { 468 | padding-left: 36px; 469 | } 470 | 471 | .uni-collapse .uni-list-cell:after { 472 | left: 52px; 473 | } 474 | 475 | .uni-list.uni-active { 476 | height: auto; 477 | } 478 | 479 | 480 | 481 | 482 | 483 | 484 | /* 三行列表 */ 485 | 486 | .uni-triplex-row { 487 | display: flex; 488 | flex: 1; 489 | width: 100%; 490 | box-sizing: border-box; 491 | flex-direction: row; 492 | padding: 22px 30px; 493 | } 494 | 495 | .uni-triplex-right, 496 | .uni-triplex-left { 497 | display: flex; 498 | flex-direction: column; 499 | } 500 | 501 | .uni-triplex-left { 502 | width: 84%; 503 | } 504 | 505 | .uni-triplex-right { 506 | width: 16%; 507 | text-align: right; 508 | } 509 | 510 | 511 | 512 | 513 | 514 | 515 | /* 图文列表 */ 516 | 517 | .uni-media-list { 518 | padding: 22px 30px; 519 | box-sizing: border-box; 520 | display: flex; 521 | width: 100%; 522 | flex-direction: row; 523 | } 524 | 525 | .uni-navigate-right.uni-media-list { 526 | padding-right: 74px; 527 | } 528 | 529 | .uni-pull-right { 530 | flex-direction: row-reverse; 531 | } 532 | 533 | .uni-pull-right>.uni-media-list-logo { 534 | margin-right: 0px; 535 | margin-left: 20px; 536 | } 537 | 538 | .uni-media-list-logo { 539 | height: 84px; 540 | width: 84px; 541 | margin-right: 20px; 542 | } 543 | 544 | .uni-media-list-body { 545 | height: 84px; 546 | display: flex; 547 | flex: 1; 548 | flex-direction: column; 549 | justify-content: space-between; 550 | align-items: flex-start; 551 | overflow: hidden; 552 | } 553 | 554 | .uni-media-list-text-top { 555 | width: 100%; 556 | line-height: 36px; 557 | font-size: 34px; 558 | } 559 | 560 | .uni-media-list-text-bottom { 561 | width: 100%; 562 | line-height: 30px; 563 | font-size: 28px; 564 | color: #8f8f94; 565 | } 566 | 567 | 568 | 569 | 570 | 571 | /* 九宫格 */ 572 | 573 | .uni-grid-9 { 574 | background: #f2f2f2; 575 | width: 750px; 576 | display: flex; 577 | flex-direction: row; 578 | flex-wrap: wrap; 579 | border-top: 2px solid #eee; 580 | } 581 | 582 | .uni-grid-9-item { 583 | width: 250px; 584 | height: 200px; 585 | display: flex; 586 | flex-direction: column; 587 | align-items: center; 588 | justify-content: center; 589 | border-bottom: 2px solid; 590 | border-right: 2px solid; 591 | border-color: #eee; 592 | box-sizing: border-box; 593 | } 594 | 595 | .no-border-right { 596 | border-right: none; 597 | } 598 | 599 | .uni-grid-9-image { 600 | width: 100px; 601 | height: 100px; 602 | } 603 | 604 | .uni-grid-9-text { 605 | width: 250px; 606 | line-height: 50px; 607 | height: 50px; 608 | text-align: center; 609 | font-size: 30px; 610 | } 611 | 612 | .uni-grid-9-item-hover { 613 | background: rgba(0, 0, 0, 0.1); 614 | } 615 | 616 | 617 | 618 | 619 | 620 | /* 上传 */ 621 | 622 | .uni-uploader { 623 | flex: 1; 624 | flex-direction: column; 625 | } 626 | 627 | .uni-uploader-head { 628 | display: flex; 629 | flex-direction: row; 630 | justify-content: space-between; 631 | } 632 | 633 | .uni-uploader-info { 634 | color: #B2B2B2; 635 | } 636 | 637 | .uni-uploader-body { 638 | margin-top: 16px; 639 | overflow: hidden; 640 | } 641 | 642 | .uni-uploader__file { 643 | float: left; 644 | margin-right: 18px; 645 | margin-bottom: 18px; 646 | } 647 | 648 | .uni-uploader__img { 649 | display: block; 650 | width: 158px; 651 | height: 158px; 652 | } 653 | 654 | .uni-uploader__input-box { 655 | float: left; 656 | position: relative; 657 | margin-right: 18px; 658 | margin-bottom: 18px; 659 | width: 154px; 660 | height: 154px; 661 | border: 2px solid #D9D9D9; 662 | } 663 | 664 | .uni-uploader__input-box:before, 665 | .uni-uploader__input-box:after { 666 | content: " "; 667 | position: absolute; 668 | top: 50%; 669 | left: 50%; 670 | -webkit-transform: translate(-50%, -50%); 671 | transform: translate(-50%, -50%); 672 | background-color: #D9D9D9; 673 | } 674 | 675 | .uni-uploader__input-box:before { 676 | width: 4px; 677 | height: 79px; 678 | } 679 | 680 | .uni-uploader__input-box:after { 681 | width: 79px; 682 | height: 4px; 683 | } 684 | 685 | .uni-uploader__input-box:active { 686 | border-color: #999999; 687 | } 688 | 689 | .uni-uploader__input-box:active:before, 690 | .uni-uploader__input-box:active:after { 691 | background-color: #999999; 692 | } 693 | 694 | .uni-uploader__input { 695 | position: absolute; 696 | z-index: 1; 697 | top: 0; 698 | left: 0; 699 | width: 100%; 700 | height: 100%; 701 | opacity: 0; 702 | } 703 | 704 | 705 | 706 | 707 | 708 | /*问题反馈*/ 709 | 710 | .feedback-title { 711 | display: flex; 712 | flex-direction: row; 713 | justify-content: space-between; 714 | align-items: center; 715 | padding: 20px; 716 | color: #8f8f94; 717 | font-size: 28px; 718 | } 719 | 720 | .feedback-star-view.feedback-title { 721 | justify-content: flex-start; 722 | margin: 0; 723 | } 724 | 725 | .feedback-quick { 726 | position: relative; 727 | padding-right: 40px; 728 | } 729 | 730 | .feedback-quick:after { 731 | font-family: uniicons; 732 | font-size: 40px; 733 | content: '\e581'; 734 | position: absolute; 735 | right: 0; 736 | top: 50%; 737 | color: #bbb; 738 | -webkit-transform: translateY(-50%); 739 | transform: translateY(-50%); 740 | } 741 | 742 | .feedback-body { 743 | background: #fff; 744 | } 745 | 746 | .feedback-textare { 747 | height: 200px; 748 | font-size: 34px; 749 | padding: 20px 30px 0; 750 | } 751 | 752 | .feedback-input { 753 | height: 80px; 754 | font-size: 34px; 755 | padding-left: 20px; 756 | } 757 | 758 | .feedback-uploader { 759 | padding: 22px 20px; 760 | } 761 | 762 | .feedback-star { 763 | font-family: uniicons; 764 | font-size: 40px; 765 | margin-left: 6px; 766 | } 767 | 768 | .feedback-star-view { 769 | margin-left: 20px; 770 | } 771 | 772 | .feedback-star:after { 773 | content: '\e408'; 774 | } 775 | 776 | .feedback-star.active { 777 | color: #FFB400; 778 | } 779 | 780 | .feedback-star.active:after { 781 | content: '\e438'; 782 | } 783 | 784 | .feedback-submit { 785 | background: #007AFF; 786 | color: #FFFFFF; 787 | margin: 20px; 788 | } 789 | -------------------------------------------------------------------------------- /bottom-navigation/common/util.js: -------------------------------------------------------------------------------- 1 | var util = { 2 | site: "https://www.xywqq.com", //https://www.xywqq.com http://192.168.2.233:8080 3 | project: "/XYW/", 4 | back(delta) { 5 | delta = !delta ? 1 : delta; 6 | uni.navigateBack({ 7 | delta: delta, 8 | }) 9 | }, 10 | share(shares,title,url,img){ 11 | // #ifdef MP-WEIXIN 12 | uni.showToast({ 13 | title:"分享开通中~", 14 | }) 15 | return; 16 | // #endif 17 | // #ifdef APP-PLUS 18 | plus.nativeUI.actionSheet({ 19 | title: "分享文章", 20 | cancel: "取消", 21 | buttons: [{ 22 | title: "发送给微信好友" 23 | }, { 24 | title: "分享到微信朋友圈" 25 | }, { 26 | title: "分享到QQ" 27 | }] 28 | }, function(e) { 29 | var index = e.index; 30 | var share = null; 31 | var scene = ""; 32 | var thumbs = []; //分享URL的缩略图 33 | var iconUrl = "https://www.xywqq.com/XYW/m/newFate/img/head.png"; 34 | if(!!img){ 35 | iconUrl = img; 36 | } 37 | thumbs.push(iconUrl); 38 | var msg = { 39 | title: title, 40 | href: url, 41 | thumbs: thumbs, 42 | content:title, 43 | } 44 | if(index == 1) { 45 | scene = "WXSceneSession"; 46 | msg["extra"] = { 47 | "scene": scene 48 | } 49 | share = shares['weixin']; 50 | } 51 | if(index == 2) { 52 | scene = "WXSceneTimeline"; 53 | msg["extra"] = { 54 | "scene": scene 55 | } 56 | share = shares['weixin']; 57 | } 58 | if(index == 3) { 59 | share = shares['qq']; 60 | } 61 | if(index == 4) { 62 | share = shares['qq']; 63 | } 64 | share.send(msg, function() { 65 | uni.showToast({ 66 | title:"分享成功", 67 | }) 68 | }, function(e) { 69 | console.log(JSON.stringify(e)) 70 | }); 71 | }); 72 | // #endif 73 | }, 74 | confirm(msg, callBackFun) { 75 | uni.showModal({ 76 | content: msg, 77 | success: function (res) { 78 | if (res.confirm) { 79 | callBackFun(true) 80 | } else if (res.cancel) { 81 | callBackFun(false) 82 | } 83 | } 84 | }) 85 | }, 86 | Alert: function (msg, callBackFun) { 87 | uni.showModal({ 88 | title: '乡缘网提示', 89 | content: msg, 90 | showCancel: false, 91 | success: function () { 92 | if (!!callBackFun) { 93 | callBackFun() 94 | } 95 | } 96 | }); 97 | }, 98 | getData: function (key) { 99 | var data = ""; 100 | uni.getStorage({ 101 | key: key, 102 | success:function(res){ 103 | data = res.data; 104 | return res.data; 105 | } 106 | }) 107 | return data; 108 | }, 109 | setData: function (key, value) { 110 | uni.setStorage({ 111 | key: key, 112 | data: value, 113 | }) 114 | }, 115 | tip: function (msg) { 116 | uni.showToast({ 117 | title: msg, 118 | duration: 2000, 119 | mask: true, 120 | icon: "none", 121 | }) 122 | }, 123 | openWindow: function (url) { 124 | uni.navigateTo({ 125 | url: url 126 | }); 127 | }, 128 | httpSend: function (url, params, callBackFun, showLoading) { 129 | if (!!showLoading) { 130 | uni.showNavigationBarLoading(); 131 | } 132 | var jsessionid = uni.getStorageSync("sessionId") || ""; 133 | // console.log("请求参数:" + JSON.stringify(params)) 134 | uni.request({ 135 | url: util.site + util.project + url + ".php", //仅为示例,并非真实接口地址。 136 | data: params, 137 | method: "POST", 138 | header: { 139 | "content-type": "application/x-www-form-urlencoded", 140 | cookie: jsessionid 141 | }, 142 | success: function (res) { 143 | // console.log("返回数据:" + JSON.stringify(res)) 144 | if (!!showLoading) { 145 | uni.hideNavigationBarLoading(); 146 | // console.log("返回数据:"+JSON.stringify(res.data)) 147 | } 148 | if (!!res.data.token) { 149 | uni.setStorage({ 150 | key: 'sessionId', 151 | data: 'JSESSIONID=' + res.data.token 152 | }) 153 | } 154 | if (res.statusCode == 200) { 155 | callBackFun(res.data) 156 | } else { 157 | console.log(JSON.stringify(res)) 158 | } 159 | } 160 | }); 161 | }, 162 | alipay(opt, money, articleId) { 163 | if (opt == "publishArticleReward") { 164 | var params = util.getData("rewardParams"); 165 | params["payType"] = "app"; 166 | util.httpSend("ArticleAction!getAlipayParamsByEditReward", params, function (data) { 167 | plus.payment.request(pays["alipay"], data, paySuccess, payError); 168 | }, null, "text"); 169 | } 170 | if (opt == "publishArticle") { 171 | var params = { 172 | "totalMoney": money, 173 | "articleId": articleId, 174 | "payType": "app" 175 | } 176 | util.httpSend("ArticleAction!getAliPayParameters", params, function (data) { 177 | plus.payment.request(pays["alipay"], data, paySuccess, payError); 178 | }, null, "text"); 179 | } 180 | if (opt == "reward") { 181 | var params = { 182 | "totalMoney": money * 100, 183 | "articleId": articleId, 184 | "payType": "app" 185 | } 186 | util.httpSend("ArticleAction!gatAlipayParamsReward", params, data => { 187 | uni.getProvider({ 188 | service: 'payment', 189 | success: function (res) { 190 | console.log(JSON.stringify(res)) 191 | // 确保有支付宝,再进行支付。 192 | if (~res.provider.indexOf('alipay')) { 193 | uni.requestPayment({ 194 | provider: 'alipay', 195 | orderInfo: data, //订单数据 196 | success: function (res) { 197 | uni.showToast({ 198 | title:"打赏完成!", 199 | }) 200 | }, 201 | fail: function (err) { 202 | console.log('fail:' + JSON.stringify(err)); 203 | } 204 | }); 205 | } 206 | } 207 | }); 208 | }, true); 209 | } 210 | if (opt == "recharge") { 211 | var params = { 212 | totalMoney:money * 100, 213 | "payType": "app" 214 | } 215 | var url = "https://www.xywqq.com" + "/XYW/PayAction!gatAlipayParamsRecharge.php?totalMoney=" + money * 100; 216 | util.httpSend("PayAction!gatAlipayParamsRecharge", params, data=> { 217 | uni.getProvider({ 218 | service: 'payment', 219 | success: function (res) { 220 | console.log(JSON.stringify(res)) 221 | // 确保有支付宝,再进行支付。 222 | if (~res.provider.indexOf('alipay')) { 223 | uni.requestPayment({ 224 | provider: 'alipay', 225 | orderInfo: data, //订单数据 226 | success: function (res) { 227 | uni.showToast({ 228 | title:"充值完成!", 229 | }) 230 | }, 231 | fail: function (err) { 232 | console.log('fail:' + JSON.stringify(err)); 233 | } 234 | }); 235 | } 236 | } 237 | }); 238 | }, null, "text"); 239 | } 240 | }, 241 | showPaySheet(opt, money, articleId) { //opt 支付选项 money 支付金额 242 | // #ifdef MP-WEIXIN 243 | util.tip("小程序支付即将开通!") 244 | // #endif 245 | // #ifdef APP-PLUS 246 | uni.showActionSheet({ 247 | itemList: ["支付宝"], 248 | success: function (res) { 249 | if (res.tapIndex == 0) //0为支付宝 250 | { 251 | util.alipay(opt, money, articleId); 252 | } 253 | } 254 | }) 255 | // #endif 256 | }, 257 | dateFormat: function(fmt, date) { 258 | var o = { 259 | "M+": date.getMonth() + 1, //月份 260 | "d+": date.getDate(), //日 261 | "h+": date.getHours(), //小时 262 | "m+": date.getMinutes(), //分 263 | "s+": date.getSeconds(), //秒 264 | "q+": Math.floor((date.getMonth() + 3) / 3), //季度 265 | "S": date.getMilliseconds() //毫秒 266 | }; 267 | if(/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length)); 268 | for(var k in o) 269 | if(new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length))); 270 | return fmt; 271 | }, 272 | } 273 | 274 | module.exports = { 275 | util: util 276 | } 277 | -------------------------------------------------------------------------------- /bottom-navigation/common/zanui.wxss: -------------------------------------------------------------------------------- 1 | .zan-actionsheet { 2 | background-color: #f8f8f8 3 | } 4 | 5 | .zan-actionsheet__mask { 6 | position: fixed; 7 | top: 0; 8 | left: 0; 9 | right: 0; 10 | bottom: 0; 11 | z-index: 10; 12 | background: rgba(0, 0, 0, .7); 13 | display: none 14 | } 15 | 16 | .zan-actionsheet__container { 17 | position: fixed; 18 | left: 0; 19 | right: 0; 20 | bottom: 0; 21 | background: #f8f8f8; 22 | transform: translate3d(0, 50%, 0); 23 | transform-origin: center; 24 | transition: all .2s ease; 25 | z-index: 11; 26 | opacity: 0; 27 | visibility: hidden 28 | } 29 | 30 | .zan-actionsheet__btn.zan-btn { 31 | height: 50px; 32 | line-height: 50px; 33 | margin-bottom: 0 34 | } 35 | 36 | .zan-actionsheet__btn.zan-btn::after { 37 | border-width: 0; 38 | border-bottom-width: 1px 39 | } 40 | 41 | .zan-actionsheet__btn.zan-btn:last-child::after { 42 | border-bottom-width: 0 43 | } 44 | 45 | .zan-actionsheet__subname { 46 | margin-left: 2px; 47 | font-size: 12px; 48 | color: #666 49 | } 50 | 51 | .zan-actionsheet__footer { 52 | margin-top: 10px 53 | } 54 | 55 | .zan-actionsheet__btn.zan-btn--loading .zan-actionsheet__subname { 56 | color: transparent 57 | } 58 | 59 | .zan-actionsheet--show .zan-actionsheet__container { 60 | opacity: 1; 61 | transform: translate3d(0, 0, 0); 62 | visibility: visible 63 | } 64 | 65 | .zan-actionsheet--show .zan-actionsheet__mask { 66 | display: block 67 | } 68 | 69 | .zan-badge { 70 | position: relative 71 | } 72 | 73 | .zan-badge__count { 74 | position: absolute; 75 | top: -16px; 76 | right: 0; 77 | height: 1.6em; 78 | min-width: 1.6em; 79 | line-height: 1.6; 80 | padding: 0 .4em; 81 | font-size: 20px; 82 | border-radius: .8em; 83 | background: #f44; 84 | color: #fff; 85 | text-align: center; 86 | white-space: nowrap; 87 | transform: translateX(50%) scale(.5); 88 | transform-origin: center; 89 | z-index: 10; 90 | box-shadow: 0 0 0 2px #fff; 91 | box-sizing: border-box 92 | } 93 | 94 | .zan-btn { 95 | position: relative; 96 | color: #333; 97 | background-color: #fff; 98 | margin-bottom: 20px; 99 | padding-left: 30px; 100 | padding-right: 30px; 101 | border-radius: 4px; 102 | font-size: 32px; 103 | line-height: 90px; 104 | height: 90px; 105 | box-sizing: border-box; 106 | text-decoration: none; 107 | text-align: center; 108 | vertical-align: middle 109 | } 110 | 111 | .zan-btn::after { 112 | content: ''; 113 | position: absolute; 114 | top: 0; 115 | left: 0; 116 | width: 200%; 117 | height: 200%; 118 | transform: scale(.5); 119 | transform-origin: 0 0; 120 | pointer-events: none; 121 | box-sizing: border-box; 122 | border: 0 solid #e5e5e5; 123 | border-width: 2px; 124 | border-radius: 8px 125 | } 126 | 127 | .zan-btns { 128 | margin: 30px 129 | } 130 | 131 | .zan-btn--primary { 132 | color: #fff; 133 | background-color: #4b0 134 | } 135 | 136 | .zan-btn--primary::after { 137 | border-color: #0a0 138 | } 139 | 140 | .zan-btn--warn { 141 | color: #fff; 142 | background-color: #f85 143 | } 144 | 145 | .zan-btn--warn::after { 146 | border-color: #f85 147 | } 148 | 149 | .zan-btn--danger { 150 | color: #fff; 151 | background-color: #f44 152 | } 153 | 154 | .zan-btn--danger::after { 155 | border-color: #e33 156 | } 157 | 158 | .zan-btn--small { 159 | display: inline-block; 160 | height: 60px; 161 | line-height: 60px; 162 | font-size: 24px; 163 | margin-right: 10px; 164 | margin-bottom: 0 165 | } 166 | 167 | .zan-btn--mini { 168 | display: inline-block; 169 | line-height: 42px; 170 | height: 44px; 171 | font-size: 20px; 172 | margin-right: 10px; 173 | margin-bottom: 0; 174 | padding-left: 10px; 175 | padding-right: 10px 176 | } 177 | 178 | .zan-btn--large { 179 | border-radius: 0; 180 | margin-bottom: 0; 181 | border: none; 182 | line-height: 100px; 183 | height: 100px 184 | } 185 | 186 | .zan-btn--plain.zan-btn { 187 | background-color: transparent 188 | } 189 | 190 | .zan-btn--plain.zan-btn--primary { 191 | color: #06bf04 192 | } 193 | 194 | .zan-btn--plain.zan-btn--warn { 195 | color: #f60 196 | } 197 | 198 | .zan-btn--plain.zan-btn--danger { 199 | color: #f44 200 | } 201 | 202 | .button-hover { 203 | opacity: .9 204 | } 205 | 206 | .zan-btn--loading { 207 | color: transparent; 208 | opacity: 1 209 | } 210 | 211 | .zan-btn--loading::before { 212 | position: absolute; 213 | left: 50%; 214 | top: 50%; 215 | content: ' '; 216 | width: 32px; 217 | height: 32px; 218 | margin-left: -16px; 219 | margin-top: -16px; 220 | border: 6px solid #e5e5e5; 221 | border-color: #666 #e5e5e5 #e5e5e5 #e5e5e5; 222 | border-radius: 16px; 223 | box-sizing: border-box; 224 | animation: btn-spin .6s linear; 225 | animation-iteration-count: infinite 226 | } 227 | 228 | .zan-btn--danger.zan-btn--loading::before, 229 | .zan-btn--primary.zan-btn--loading::before, 230 | .zan-btn--warn.zan-btn--loading::before { 231 | border-color: #fff rgba(0, 0, 0, .1) rgba(0, 0, 0, .1) rgba(0, 0, 0, .1) 232 | } 233 | 234 | @keyframes btn-spin { 235 | 0% { 236 | transform: rotate(0) 237 | } 238 | 100% { 239 | transform: rotate(360deg) 240 | } 241 | } 242 | 243 | .zan-btn.zan-btn--disabled { 244 | color: #999!important; 245 | background: #f8f8f8!important; 246 | border-color: #e5e5e5!important; 247 | cursor: not-allowed!important; 248 | opacity: 1!important 249 | } 250 | 251 | .zan-btn.zan-btn--disabled::after { 252 | border-color: #e5e5e5!important 253 | } 254 | 255 | .zan-btn--last-child, 256 | .zan-btn:last-child { 257 | margin-bottom: 0; 258 | margin-right: 0 259 | } 260 | 261 | .zan-capsule { 262 | display: inline-block; 263 | font-size: 24px; 264 | vertical-align: middle; 265 | line-height: 38px; 266 | transform: scale(.83) 267 | } 268 | 269 | .zan-capsule__left, 270 | .zan-capsule__right { 271 | display: inline-block; 272 | line-height: 34px; 273 | height: 38px; 274 | vertical-align: middle; 275 | box-sizing: border-box 276 | } 277 | 278 | .zan-capsule__left { 279 | padding: 0 2px; 280 | color: #fff; 281 | background: #999; 282 | border-radius: 2px 0 0 2px; 283 | border: 1rpx solid #999 284 | } 285 | 286 | .zan-capsule__right { 287 | padding: 0 5px; 288 | color: #999; 289 | border-radius: 0 2px 2px 0; 290 | border: 1rpx solid #999 291 | } 292 | 293 | .zan-capsule--danger .zan-capsule__left { 294 | color: #fff; 295 | background: #f24544; 296 | border-color: #f24544 297 | } 298 | 299 | .zan-capsule--danger .zan-capsule__right { 300 | color: #f24544; 301 | border-color: #f24544 302 | } 303 | 304 | .zan-card { 305 | margin-left: 0; 306 | width: auto; 307 | padding: 10px 30px; 308 | overflow: hidden; 309 | position: relative; 310 | font-size: 28px 311 | } 312 | 313 | .zan-card__thumb { 314 | width: 180px; 315 | height: 180px; 316 | float: left; 317 | position: relative; 318 | margin-left: auto; 319 | margin-right: auto; 320 | overflow: hidden; 321 | background-size: cover 322 | } 323 | 324 | .zan-card__img { 325 | position: absolute; 326 | top: 0; 327 | left: 0; 328 | right: 0; 329 | bottom: 0; 330 | width: auto; 331 | height: auto; 332 | max-width: 100%; 333 | max-height: 100% 334 | } 335 | 336 | .zan-card__detail { 337 | margin-left: 200px; 338 | width: auto; 339 | position: relative 340 | } 341 | 342 | .zan-card__detail-row { 343 | overflow: hidden; 344 | line-height: 40px; 345 | min-height: 40px; 346 | margin-bottom: 6px 347 | } 348 | 349 | .zan-card__right-col { 350 | float: right 351 | } 352 | 353 | .zan-card__left-col { 354 | margin-right: 160px 355 | } 356 | 357 | .zan-cell { 358 | position: relative; 359 | padding: 24px 30px; 360 | display: flex; 361 | align-items: center; 362 | line-height: 1.4; 363 | font-size: 28px 364 | } 365 | 366 | .zan-cell::after { 367 | content: ''; 368 | position: absolute; 369 | top: 0; 370 | left: 0; 371 | width: 200%; 372 | height: 200%; 373 | transform: scale(.5); 374 | transform-origin: 0 0; 375 | pointer-events: none; 376 | box-sizing: border-box; 377 | border: 0 solid #e5e5e5; 378 | border-bottom-width: 2px; 379 | left: 30px; 380 | right: 0 381 | } 382 | 383 | .zan-cell__icon { 384 | margin-right: 10px 385 | } 386 | 387 | .zan-cell__bd { 388 | flex: 1 389 | } 390 | 391 | .zan-cell__text { 392 | line-height: 48px; 393 | font-size: 28px 394 | } 395 | 396 | .zan-cell__desc { 397 | line-height: 1.2; 398 | font-size: 24px; 399 | color: #666 400 | } 401 | 402 | .zan-cell__ft { 403 | position: relative; 404 | text-align: right; 405 | color: #666 406 | } 407 | 408 | .zan-cell__no-pading { 409 | padding: 0 410 | } 411 | 412 | .zan-cell__no-pading .zan-cell__bd_padding { 413 | padding: 24px 0 24px 30px 414 | } 415 | 416 | .zan-cell__no-pading .zan-cell__bd_padding .zan-form__input { 417 | height: 26px 418 | } 419 | 420 | .zan-cell__no-pading .zan-cell__ft_padding { 421 | padding: 24px 30px 24px 0 422 | } 423 | 424 | .zan-cell--last-child::after, 425 | .zan-cell:last-child::after { 426 | display: none 427 | } 428 | 429 | .zan-cell--access .zan-cell__ft { 430 | padding-right: 26px 431 | } 432 | 433 | .zan-cell--access .zan-cell__ft::after { 434 | position: absolute; 435 | top: 50%; 436 | right: 4px; 437 | content: " "; 438 | display: inline-block; 439 | height: 12px; 440 | width: 12px; 441 | border-width: 4px 4px 0 0; 442 | border-color: #c8c8c8; 443 | border-style: solid; 444 | transform: translateY(-50%) matrix(.71, .71, -.71, .71, 0, 0) 445 | } 446 | 447 | .zan-cell--switch { 448 | padding-top: 12px; 449 | padding-bottom: 12px 450 | } 451 | 452 | .zan-col { 453 | float: left; 454 | box-sizing: border-box; 455 | width: 0 456 | } 457 | 458 | .zan-col-1 { 459 | width: 4.16667% 460 | } 461 | 462 | .zan-col-offset-1 { 463 | margin-left: 4.16667% 464 | } 465 | 466 | .zan-col-2 { 467 | width: 8.33333% 468 | } 469 | 470 | .zan-col-offset-2 { 471 | margin-left: 8.33333% 472 | } 473 | 474 | .zan-col-3 { 475 | width: 12.5% 476 | } 477 | 478 | .zan-col-offset-3 { 479 | margin-left: 12.5% 480 | } 481 | 482 | .zan-col-4 { 483 | width: 16.66667% 484 | } 485 | 486 | .zan-col-offset-4 { 487 | margin-left: 16.66667% 488 | } 489 | 490 | .zan-col-5 { 491 | width: 20.83333% 492 | } 493 | 494 | .zan-col-offset-5 { 495 | margin-left: 20.83333% 496 | } 497 | 498 | .zan-col-6 { 499 | width: 25% 500 | } 501 | 502 | .zan-col-offset-6 { 503 | margin-left: 25% 504 | } 505 | 506 | .zan-col-7 { 507 | width: 29.16667% 508 | } 509 | 510 | .zan-col-offset-7 { 511 | margin-left: 29.16667% 512 | } 513 | 514 | .zan-col-8 { 515 | width: 33.33333% 516 | } 517 | 518 | .zan-col-offset-8 { 519 | margin-left: 33.33333% 520 | } 521 | 522 | .zan-col-9 { 523 | width: 37.5% 524 | } 525 | 526 | .zan-col-offset-9 { 527 | margin-left: 37.5% 528 | } 529 | 530 | .zan-col-10 { 531 | width: 41.66667% 532 | } 533 | 534 | .zan-col-offset-10 { 535 | margin-left: 41.66667% 536 | } 537 | 538 | .zan-col-11 { 539 | width: 45.83333% 540 | } 541 | 542 | .zan-col-offset-11 { 543 | margin-left: 45.83333% 544 | } 545 | 546 | .zan-col-12 { 547 | width: 50% 548 | } 549 | 550 | .zan-col-offset-12 { 551 | margin-left: 50% 552 | } 553 | 554 | .zan-col-13 { 555 | width: 54.16667% 556 | } 557 | 558 | .zan-col-offset-13 { 559 | margin-left: 54.16667% 560 | } 561 | 562 | .zan-col-14 { 563 | width: 58.33333% 564 | } 565 | 566 | .zan-col-offset-14 { 567 | margin-left: 58.33333% 568 | } 569 | 570 | .zan-col-15 { 571 | width: 62.5% 572 | } 573 | 574 | .zan-col-offset-15 { 575 | margin-left: 62.5% 576 | } 577 | 578 | .zan-col-16 { 579 | width: 66.66667% 580 | } 581 | 582 | .zan-col-offset-16 { 583 | margin-left: 66.66667% 584 | } 585 | 586 | .zan-col-17 { 587 | width: 70.83333% 588 | } 589 | 590 | .zan-col-offset-17 { 591 | margin-left: 70.83333% 592 | } 593 | 594 | .zan-col-18 { 595 | width: 75% 596 | } 597 | 598 | .zan-col-offset-18 { 599 | margin-left: 75% 600 | } 601 | 602 | .zan-col-19 { 603 | width: 79.16667% 604 | } 605 | 606 | .zan-col-offset-19 { 607 | margin-left: 79.16667% 608 | } 609 | 610 | .zan-col-20 { 611 | width: 83.33333% 612 | } 613 | 614 | .zan-col-offset-20 { 615 | margin-left: 83.33333% 616 | } 617 | 618 | .zan-col-21 { 619 | width: 87.5% 620 | } 621 | 622 | .zan-col-offset-21 { 623 | margin-left: 87.5% 624 | } 625 | 626 | .zan-col-22 { 627 | width: 91.66667% 628 | } 629 | 630 | .zan-col-offset-22 { 631 | margin-left: 91.66667% 632 | } 633 | 634 | .zan-col-23 { 635 | width: 95.83333% 636 | } 637 | 638 | .zan-col-offset-23 { 639 | margin-left: 95.83333% 640 | } 641 | 642 | .zan-col-24 { 643 | width: 100% 644 | } 645 | 646 | .zan-col-offset-24 { 647 | margin-left: 100% 648 | } 649 | 650 | .zan-c-red { 651 | color: #f44!important 652 | } 653 | 654 | .zan-c-gray { 655 | color: #c9c9c9!important 656 | } 657 | 658 | .zan-c-gray-dark { 659 | color: #999!important 660 | } 661 | 662 | .zan-c-gray-darker { 663 | color: #666!important 664 | } 665 | 666 | .zan-c-black { 667 | color: #333!important 668 | } 669 | 670 | .zan-c-blue { 671 | color: #38f!important 672 | } 673 | 674 | .zan-c-green { 675 | color: #06bf04!important 676 | } 677 | 678 | .zan-dialog--container { 679 | position: fixed; 680 | top: 45%; 681 | left: 50%; 682 | width: 80%; 683 | height: 0; 684 | font-size: 32px; 685 | overflow: hidden; 686 | transition: all .2s linear; 687 | border-radius: 8px; 688 | background-color: #fff; 689 | transform: translate3d(-50%, -50%, 0); 690 | color: #333; 691 | opacity: 0 692 | } 693 | 694 | .zan-dialog--mask { 695 | position: fixed; 696 | width: 100%; 697 | height: 100%; 698 | top: 0; 699 | left: 0; 700 | background-color: rgba(0, 0, 0, .6); 701 | transition: .3s; 702 | display: none 703 | } 704 | 705 | .zan-dialog__header { 706 | padding: 30px 0 0; 707 | text-align: center 708 | } 709 | 710 | .zan-dialog__content { 711 | position: relative; 712 | padding: 30px 40px; 713 | line-height: 1.5; 714 | min-height: 80px 715 | } 716 | 717 | .zan-dialog__content::after { 718 | content: ''; 719 | position: absolute; 720 | top: 0; 721 | left: 0; 722 | width: 200%; 723 | height: 200%; 724 | transform: scale(.5); 725 | transform-origin: 0 0; 726 | pointer-events: none; 727 | box-sizing: border-box; 728 | border: 0 solid #e5e5e5; 729 | border-bottom-width: 1px 730 | } 731 | 732 | .zan-dialog__content--title { 733 | color: #999; 734 | font-size: 28px 735 | } 736 | 737 | .zan-dialog__footer { 738 | overflow: hidden 739 | } 740 | 741 | .zan-dialog__button { 742 | line-height: 100px; 743 | height: 100px; 744 | padding: 0 10px; 745 | border-radius: 0; 746 | margin-bottom: 0 747 | } 748 | 749 | .zan-dialog__button::after { 750 | border-width: 0; 751 | border-radius: 0 752 | } 753 | 754 | .zan-dialog--show .zan-dialog--container { 755 | opacity: 1; 756 | height: auto 757 | } 758 | 759 | .zan-dialog--show .zan-dialog--mask { 760 | display: block 761 | } 762 | 763 | .zan-dialog__footer--horizon { 764 | display: flex 765 | } 766 | 767 | .zan-dialog__footer--horizon .zan-dialog__button { 768 | flex: 1 769 | } 770 | 771 | .zan-dialog__footer--horizon .zan-dialog__button::after { 772 | border-right-width: 2px 773 | } 774 | 775 | .zan-dialog__footer--horizon .zan-dialog__button:last-child::after { 776 | border-right-width: 0 777 | } 778 | 779 | .zan-dialog__footer--vertical .zan-dialog__button { 780 | flex: 1 781 | } 782 | 783 | .zan-dialog__footer--vertical .zan-dialog__button::after { 784 | border-bottom-width: 2px 785 | } 786 | 787 | .zan-dialog__footer--vertical .zan-dialog__button:last-child::after { 788 | border-bottom-width: 0 789 | } 790 | 791 | .zan-field { 792 | padding: 14px 30px; 793 | color: #333 794 | } 795 | 796 | .zan-field--wrapped { 797 | margin: 0 30px; 798 | background-color: #fff 799 | } 800 | 801 | .zan-field--wrapped::after { 802 | left: 0; 803 | border-width: 2px; 804 | border-radius: 8px 805 | } 806 | 807 | .zan-field.zan-field--wrapped::after { 808 | display: block 809 | } 810 | 811 | .zan-field--wrapped+.zan-field--wrapped { 812 | margin-top: 20px 813 | } 814 | 815 | .zan-field--error { 816 | color: #f40 817 | } 818 | 819 | .zan-field--wrapped.zan-field--error::after { 820 | border-color: #f40 821 | } 822 | 823 | .zan-field__title { 824 | color: #333; 825 | min-width: 130px; 826 | padding-right: 20px 827 | } 828 | 829 | .zan-field__input { 830 | flex: 1; 831 | line-height: 1.6; 832 | padding: 8px 0; 833 | min-height: 44px; 834 | height: auto; 835 | font-size: 28px 836 | } 837 | 838 | .zan-field__placeholder { 839 | font-size: 28px 840 | } 841 | 842 | .zan-field__input--right { 843 | text-align: right 844 | } 845 | 846 | .zan-pull-left { 847 | float: left 848 | } 849 | 850 | .zan-pull-right { 851 | float: right 852 | } 853 | 854 | .zan-center { 855 | text-align: center 856 | } 857 | 858 | .zan-right { 859 | text-align: right 860 | } 861 | 862 | .zan-text-deleted { 863 | text-decoration: line-through 864 | } 865 | 866 | .zan-font-8 { 867 | font-size: 16px 868 | } 869 | 870 | .zan-font-10 { 871 | font-size: 20px 872 | } 873 | 874 | .zan-font-12 { 875 | font-size: 24px 876 | } 877 | 878 | .zan-font-14 { 879 | font-size: 28px 880 | } 881 | 882 | .zan-font-16 { 883 | font-size: 32px 884 | } 885 | 886 | .zan-font-18 { 887 | font-size: 36px 888 | } 889 | 890 | .zan-font-20 { 891 | font-size: 40px 892 | } 893 | 894 | .zan-font-22 { 895 | font-size: 44px 896 | } 897 | 898 | .zan-font-24 { 899 | font-size: 44px 900 | } 901 | 902 | .zan-font-30 { 903 | font-size: 60px 904 | } 905 | 906 | .zan-font-bold { 907 | font-weight: 700 908 | } 909 | 910 | .zan-arrow { 911 | position: absolute; 912 | right: 30px; 913 | top: 50%; 914 | display: inline-block; 915 | height: 12px; 916 | width: 12px; 917 | border-width: 4px 4px 0 0; 918 | border-color: #c8c8c8; 919 | border-style: solid; 920 | transform: translateY(-50%) matrix(.71, .71, -.71, .71, 0, 0) 921 | } 922 | 923 | .zan-ellipsis { 924 | overflow: hidden; 925 | text-overflow: ellipsis; 926 | white-space: nowrap; 927 | word-wrap: normal 928 | } 929 | 930 | .zan-ellipsis--l2 { 931 | max-height: 80px; 932 | line-height: 40px; 933 | overflow: hidden; 934 | text-overflow: ellipsis; 935 | display: -webkit-box; 936 | -webkit-line-clamp: 2; 937 | -webkit-box-orient: vertical 938 | } 939 | 940 | .zan-ellipsis--l3 { 941 | max-height: 120px; 942 | line-height: 40px; 943 | overflow: hidden; 944 | text-overflow: ellipsis; 945 | display: -webkit-box; 946 | -webkit-line-clamp: 3; 947 | -webkit-box-orient: vertical 948 | } 949 | 950 | .zan-clearfix { 951 | zoom: 1 952 | } 953 | 954 | .zan-clearfix::after { 955 | content: ''; 956 | display: table; 957 | clear: both 958 | } 959 | 960 | .zan-hairline, 961 | .zan-hairline--bottom, 962 | .zan-hairline--left, 963 | .zan-hairline--right, 964 | .zan-hairline--surround, 965 | .zan-hairline--top, 966 | .zan-hairline--top-bottom { 967 | position: relative 968 | } 969 | 970 | .zan-hairline--bottom::after, 971 | .zan-hairline--left::after, 972 | .zan-hairline--right::after, 973 | .zan-hairline--surround::after, 974 | .zan-hairline--top-bottom::after, 975 | .zan-hairline--top::after, 976 | .zan-hairline::after { 977 | content: ''; 978 | position: absolute; 979 | top: 0; 980 | left: 0; 981 | width: 200%; 982 | height: 200%; 983 | transform: scale(.5); 984 | transform-origin: 0 0; 985 | pointer-events: none; 986 | box-sizing: border-box; 987 | border: 0 solid #e5e5e5 988 | } 989 | 990 | .zan-hairline--top::after { 991 | border-top-width: 2px 992 | } 993 | 994 | .zan-hairline--left::after { 995 | border-left-width: 2px 996 | } 997 | 998 | .zan-hairline--right::after { 999 | border-right-width: 2px 1000 | } 1001 | 1002 | .zan-hairline--bottom::after { 1003 | border-bottom-width: 2px 1004 | } 1005 | 1006 | .zan-hairline--top-bottom::after { 1007 | border-width: 2px 0 1008 | } 1009 | 1010 | .zan-hairline--surround::after { 1011 | border-width: 2px 1012 | } 1013 | 1014 | @font-face { 1015 | font-family: zanui-weapp-icon; 1016 | src: url(https://b.yzcdn.cn/zanui-weapp/zanui-weapp-icon-4381aded05.eot); 1017 | src: url(https://b.yzcdn.cn/zanui-weapp/zanui-weapp-icon-4381aded05.eot?#iefix) format('embedded-opentype'), url(https://b.yzcdn.cn/zanui-weapp/zanui-weapp-icon-4381aded05.woff2) format('woff2'), url(https://b.yzcdn.cn/zanui-weapp/zanui-weapp-icon-4381aded05.woff) format('woff'), url(https://b.yzcdn.cn/zanui-weapp/zanui-weapp-icon-4381aded05.ttf) format('truetype') 1018 | } 1019 | 1020 | .zan-icon { 1021 | display: inline-block 1022 | } 1023 | 1024 | .zan-icon::before { 1025 | font-family: zanui-weapp-icon!important; 1026 | font-style: normal; 1027 | font-weight: 400; 1028 | speak: none; 1029 | display: inline-block; 1030 | text-decoration: inherit; 1031 | width: 1em; 1032 | text-align: center; 1033 | font-variant: normal; 1034 | text-transform: none; 1035 | line-height: 1em; 1036 | -webkit-font-smoothing: antialiased 1037 | } 1038 | 1039 | .zan-icon-qr-invalid:before { 1040 | content: '\e800' 1041 | } 1042 | 1043 | .zan-icon-qr:before { 1044 | content: '\e801' 1045 | } 1046 | 1047 | .zan-icon-exchange:before { 1048 | content: '\e802' 1049 | } 1050 | 1051 | .zan-icon-close:before { 1052 | content: '\e803' 1053 | } 1054 | 1055 | .zan-icon-location:before { 1056 | content: '\e804' 1057 | } 1058 | 1059 | .zan-icon-upgrade:before { 1060 | content: '\e805' 1061 | } 1062 | 1063 | .zan-icon-check:before { 1064 | content: '\e806' 1065 | } 1066 | 1067 | .zan-icon-checked:before { 1068 | content: '\e807' 1069 | } 1070 | 1071 | .zan-icon-like-o:before { 1072 | content: '\e808' 1073 | } 1074 | 1075 | .zan-icon-like:before { 1076 | content: '\e809' 1077 | } 1078 | 1079 | .zan-icon-chat:before { 1080 | content: '\e80a' 1081 | } 1082 | 1083 | .zan-icon-shop:before { 1084 | content: '\e80b' 1085 | } 1086 | 1087 | .zan-icon-photograph:before { 1088 | content: '\e80c' 1089 | } 1090 | 1091 | .zan-icon-add:before { 1092 | content: '\e80d' 1093 | } 1094 | 1095 | .zan-icon-add2:before { 1096 | content: '\e80e' 1097 | } 1098 | 1099 | .zan-icon-photo:before { 1100 | content: '\e80f' 1101 | } 1102 | 1103 | .zan-icon-logistics:before { 1104 | content: '\e810' 1105 | } 1106 | 1107 | .zan-icon-edit:before { 1108 | content: '\e811' 1109 | } 1110 | 1111 | .zan-icon-passed:before { 1112 | content: '\e812' 1113 | } 1114 | 1115 | .zan-icon-cart:before { 1116 | content: '\e813' 1117 | } 1118 | 1119 | .zan-icon-shopping-cart:before { 1120 | content: '\e814' 1121 | } 1122 | 1123 | .zan-icon-arrow:before { 1124 | content: '\e815' 1125 | } 1126 | 1127 | .zan-icon-gift:before { 1128 | content: '\e816' 1129 | } 1130 | 1131 | .zan-icon-search:before { 1132 | content: '\e817' 1133 | } 1134 | 1135 | .zan-icon-clear:before { 1136 | content: '\e818' 1137 | } 1138 | 1139 | .zan-icon-success:before { 1140 | content: '\e819' 1141 | } 1142 | 1143 | .zan-icon-fail:before { 1144 | content: '\e81a' 1145 | } 1146 | 1147 | .zan-icon-contact:before { 1148 | content: '\e81b' 1149 | } 1150 | 1151 | .zan-icon-wechat:before { 1152 | content: '\e81c' 1153 | } 1154 | 1155 | .zan-icon-alipay:before { 1156 | content: '\e81d' 1157 | } 1158 | 1159 | .zan-icon-password-view:before { 1160 | content: '\e81e' 1161 | } 1162 | 1163 | .zan-icon-password-not-view:before { 1164 | content: '\e81f' 1165 | } 1166 | 1167 | .zan-icon-wap-nav:before { 1168 | content: '\e820' 1169 | } 1170 | 1171 | .zan-icon-wap-home:before { 1172 | content: '\e821' 1173 | } 1174 | 1175 | .zan-icon-ecard-pay:before { 1176 | content: '\e822' 1177 | } 1178 | 1179 | .zan-icon-balance-pay:before { 1180 | content: '\e823' 1181 | } 1182 | 1183 | .zan-icon-peer-pay:before { 1184 | content: '\e824' 1185 | } 1186 | 1187 | .zan-icon-credit-pay:before { 1188 | content: '\e825' 1189 | } 1190 | 1191 | .zan-icon-debit-pay:before { 1192 | content: '\e826' 1193 | } 1194 | 1195 | .zan-icon-other-pay:before { 1196 | content: '\e827' 1197 | } 1198 | 1199 | .zan-icon-browsing-history:before { 1200 | content: '\e828' 1201 | } 1202 | 1203 | .zan-icon-goods-collect:before { 1204 | content: '\e829' 1205 | } 1206 | 1207 | .zan-icon-shop-collect:before { 1208 | content: '\e82a' 1209 | } 1210 | 1211 | .zan-icon-receive-gift:before { 1212 | content: '\e82b' 1213 | } 1214 | 1215 | .zan-icon-send-gift:before { 1216 | content: '\e82c' 1217 | } 1218 | 1219 | .zan-icon-setting:before { 1220 | content: '\e82d' 1221 | } 1222 | 1223 | .zan-icon-points:before { 1224 | content: '\e82e' 1225 | } 1226 | 1227 | .zan-icon-coupon:before { 1228 | content: '\e82f' 1229 | } 1230 | 1231 | .zan-icon-free-postage:before { 1232 | content: '\e830' 1233 | } 1234 | 1235 | .zan-icon-discount:before { 1236 | content: '\e831' 1237 | } 1238 | 1239 | .zan-icon-birthday-privilege:before { 1240 | content: '\e832' 1241 | } 1242 | 1243 | .zan-icon-member-day-privilege:before { 1244 | content: '\e833' 1245 | } 1246 | 1247 | .zan-icon-balance-details:before { 1248 | content: '\e834' 1249 | } 1250 | 1251 | .zan-icon-cash-back-record:before { 1252 | content: '\e835' 1253 | } 1254 | 1255 | .zan-icon-points-mall:before { 1256 | content: '\e836' 1257 | } 1258 | 1259 | .zan-icon-exchange-record:before { 1260 | content: '\e837' 1261 | } 1262 | 1263 | .zan-icon-pending-payment:before { 1264 | content: '\e838' 1265 | } 1266 | 1267 | .zan-icon-pending-orders:before { 1268 | content: '\e839' 1269 | } 1270 | 1271 | .zan-icon-pending-deliver:before { 1272 | content: '\e83a' 1273 | } 1274 | 1275 | .zan-icon-pending-evaluate:before { 1276 | content: '\e83b' 1277 | } 1278 | 1279 | .zan-icon-gift-card-pay:before { 1280 | content: '\e83c' 1281 | } 1282 | 1283 | .zan-icon-cash-on-deliver:before { 1284 | content: '\e83d' 1285 | } 1286 | 1287 | .zan-icon-underway:before { 1288 | content: '\e83e' 1289 | } 1290 | 1291 | .zan-icon-point-gift:before { 1292 | content: '\e83f' 1293 | } 1294 | 1295 | .zan-icon-after-sale:before { 1296 | content: '\e840' 1297 | } 1298 | 1299 | .zan-icon-edit-data:before { 1300 | content: '\e841' 1301 | } 1302 | 1303 | .zan-icon-question:before { 1304 | content: '\e842' 1305 | } 1306 | 1307 | .zan-icon-delete:before { 1308 | content: '\e843' 1309 | } 1310 | 1311 | .zan-icon-records:before { 1312 | content: '\e844' 1313 | } 1314 | 1315 | .zan-icon-description:before { 1316 | content: '\e845' 1317 | } 1318 | 1319 | .zan-icon-card:before { 1320 | content: '\e846' 1321 | } 1322 | 1323 | .zan-icon-gift-card:before { 1324 | content: '\e847' 1325 | } 1326 | 1327 | .zan-icon-clock:before { 1328 | content: '\e848' 1329 | } 1330 | 1331 | .zan-icon-gold-coin:before { 1332 | content: '\e849' 1333 | } 1334 | 1335 | .zan-icon-completed:before { 1336 | content: '\e84a' 1337 | } 1338 | 1339 | .zan-icon-value-card:before { 1340 | content: '\e84b' 1341 | } 1342 | 1343 | .zan-icon-certificate:before { 1344 | content: '\e84c' 1345 | } 1346 | 1347 | .zan-icon-tosend:before { 1348 | content: '\e84d' 1349 | } 1350 | 1351 | .zan-icon-sign:before { 1352 | content: '\e84e' 1353 | } 1354 | 1355 | .zan-icon-home:before { 1356 | content: '\e84f' 1357 | } 1358 | 1359 | .zan-icon-phone:before { 1360 | content: '\e850' 1361 | } 1362 | 1363 | .zan-icon-add-o:before { 1364 | content: '\e851' 1365 | } 1366 | 1367 | .zan-icon-play:before { 1368 | content: '\e852' 1369 | } 1370 | 1371 | .zan-icon-pause:before { 1372 | content: '\e853' 1373 | } 1374 | 1375 | .zan-icon-stop:before { 1376 | content: '\e854' 1377 | } 1378 | 1379 | .zan-icon-hot:before { 1380 | content: '\e855' 1381 | } 1382 | 1383 | .zan-icon-new:before { 1384 | content: '\e856' 1385 | } 1386 | 1387 | .zan-icon-new-arrival:before { 1388 | content: '\e857' 1389 | } 1390 | 1391 | .zan-icon-hot-sale:before { 1392 | content: '\e858' 1393 | } 1394 | 1395 | .zan-loadmore { 1396 | position: relative; 1397 | width: 65%; 1398 | margin: 42px auto; 1399 | line-height: 40px; 1400 | font-size: 28px; 1401 | text-align: center; 1402 | vertical-align: middle 1403 | } 1404 | 1405 | .zan-loading { 1406 | width: 40px; 1407 | height: 40px; 1408 | display: inline-block; 1409 | vertical-align: middle; 1410 | animation: weuiLoading 1s steps(12, end) infinite; 1411 | background: transparent url(data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iciIgd2lkdGg9JzEyMHB4JyBoZWlnaHQ9JzEyMHB4JyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDAgMTAwIj4KICAgIDxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIiBmaWxsPSJub25lIiBjbGFzcz0iYmsiPjwvcmVjdD4KICAgIDxyZWN0IHg9JzQ2LjUnIHk9JzQwJyB3aWR0aD0nNycgaGVpZ2h0PScyMCcgcng9JzUnIHJ5PSc1JyBmaWxsPScjRTlFOUU5JwogICAgICAgICAgdHJhbnNmb3JtPSdyb3RhdGUoMCA1MCA1MCkgdHJhbnNsYXRlKDAgLTMwKSc+CiAgICA8L3JlY3Q+CiAgICA8cmVjdCB4PSc0Ni41JyB5PSc0MCcgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHJ4PSc1JyByeT0nNScgZmlsbD0nIzk4OTY5NycKICAgICAgICAgIHRyYW5zZm9ybT0ncm90YXRlKDMwIDUwIDUwKSB0cmFuc2xhdGUoMCAtMzApJz4KICAgICAgICAgICAgICAgICByZXBlYXRDb3VudD0naW5kZWZpbml0ZScvPgogICAgPC9yZWN0PgogICAgPHJlY3QgeD0nNDYuNScgeT0nNDAnIHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyByeD0nNScgcnk9JzUnIGZpbGw9JyM5Qjk5OUEnCiAgICAgICAgICB0cmFuc2Zvcm09J3JvdGF0ZSg2MCA1MCA1MCkgdHJhbnNsYXRlKDAgLTMwKSc+CiAgICAgICAgICAgICAgICAgcmVwZWF0Q291bnQ9J2luZGVmaW5pdGUnLz4KICAgIDwvcmVjdD4KICAgIDxyZWN0IHg9JzQ2LjUnIHk9JzQwJyB3aWR0aD0nNycgaGVpZ2h0PScyMCcgcng9JzUnIHJ5PSc1JyBmaWxsPScjQTNBMUEyJwogICAgICAgICAgdHJhbnNmb3JtPSdyb3RhdGUoOTAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPgogICAgPC9yZWN0PgogICAgPHJlY3QgeD0nNDYuNScgeT0nNDAnIHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyByeD0nNScgcnk9JzUnIGZpbGw9JyNBQkE5QUEnCiAgICAgICAgICB0cmFuc2Zvcm09J3JvdGF0ZSgxMjAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPgogICAgPC9yZWN0PgogICAgPHJlY3QgeD0nNDYuNScgeT0nNDAnIHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyByeD0nNScgcnk9JzUnIGZpbGw9JyNCMkIyQjInCiAgICAgICAgICB0cmFuc2Zvcm09J3JvdGF0ZSgxNTAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPgogICAgPC9yZWN0PgogICAgPHJlY3QgeD0nNDYuNScgeT0nNDAnIHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyByeD0nNScgcnk9JzUnIGZpbGw9JyNCQUI4QjknCiAgICAgICAgICB0cmFuc2Zvcm09J3JvdGF0ZSgxODAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPgogICAgPC9yZWN0PgogICAgPHJlY3QgeD0nNDYuNScgeT0nNDAnIHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyByeD0nNScgcnk9JzUnIGZpbGw9JyNDMkMwQzEnCiAgICAgICAgICB0cmFuc2Zvcm09J3JvdGF0ZSgyMTAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPgogICAgPC9yZWN0PgogICAgPHJlY3QgeD0nNDYuNScgeT0nNDAnIHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyByeD0nNScgcnk9JzUnIGZpbGw9JyNDQkNCQ0InCiAgICAgICAgICB0cmFuc2Zvcm09J3JvdGF0ZSgyNDAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPgogICAgPC9yZWN0PgogICAgPHJlY3QgeD0nNDYuNScgeT0nNDAnIHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyByeD0nNScgcnk9JzUnIGZpbGw9JyNEMkQyRDInCiAgICAgICAgICB0cmFuc2Zvcm09J3JvdGF0ZSgyNzAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPgogICAgPC9yZWN0PgogICAgPHJlY3QgeD0nNDYuNScgeT0nNDAnIHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyByeD0nNScgcnk9JzUnIGZpbGw9JyNEQURBREEnCiAgICAgICAgICB0cmFuc2Zvcm09J3JvdGF0ZSgzMDAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPgogICAgPC9yZWN0PgogICAgPHJlY3QgeD0nNDYuNScgeT0nNDAnIHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyByeD0nNScgcnk9JzUnIGZpbGw9JyNFMkUyRTInCiAgICAgICAgICB0cmFuc2Zvcm09J3JvdGF0ZSgzMzAgNTAgNTApIHRyYW5zbGF0ZSgwIC0zMCknPgogICAgPC9yZWN0Pgo8L3N2Zz4=) no-repeat; 1412 | -webkit-background-size: 100%; 1413 | background-size: 100% 1414 | } 1415 | 1416 | .zan-loadmore .zan-loading { 1417 | margin-right: 8px 1418 | } 1419 | 1420 | .zan-loadmore__tips { 1421 | display: inline-block; 1422 | vertical-align: middle; 1423 | height: 40px; 1424 | line-height: 40px 1425 | } 1426 | 1427 | .zan-loadmore--nodata, 1428 | .zan-loadmore--nomore { 1429 | color: #999 1430 | } 1431 | 1432 | .zan-loadmore--nodata::after, 1433 | .zan-loadmore--nomore::after { 1434 | content: ''; 1435 | position: absolute; 1436 | top: 0; 1437 | left: 0; 1438 | width: 200%; 1439 | height: 200%; 1440 | transform: scale(.5); 1441 | transform-origin: 0 0; 1442 | pointer-events: none; 1443 | box-sizing: border-box; 1444 | border: 0 solid #e5e5e5; 1445 | border-top-width: 2px 1446 | } 1447 | 1448 | .zan-loadmore--nodata { 1449 | margin-top: 240px 1450 | } 1451 | 1452 | .zan-loadmore--nodata .zan-loadmore__tips { 1453 | position: relative; 1454 | top: -11px; 1455 | background: #f9f9f9; 1456 | padding: 0 12px; 1457 | z-index: 1 1458 | } 1459 | 1460 | .zan-loadmore--nomore .zan-loadmore__tips { 1461 | position: relative; 1462 | top: -11px; 1463 | background: #f9f9f9; 1464 | padding: 0 12px; 1465 | z-index: 1 1466 | } 1467 | 1468 | .zan-loadmore__dot { 1469 | position: absolute; 1470 | left: 50%; 1471 | top: 20px; 1472 | margin-left: -2px; 1473 | margin-top: -2px; 1474 | content: " "; 1475 | width: 8px; 1476 | height: 8px; 1477 | border-radius: 50%; 1478 | background-color: #e5e5e5; 1479 | display: inline-block; 1480 | vertical-align: middle 1481 | } 1482 | 1483 | .zan-noticebar { 1484 | color: #f60; 1485 | padding: 18px 20px; 1486 | font-size: 24px; 1487 | line-height: 1.5; 1488 | background-color: #fff7cc 1489 | } 1490 | 1491 | .zan-panel { 1492 | position: relative; 1493 | background: #fff; 1494 | margin-top: 20px; 1495 | overflow: hidden 1496 | } 1497 | 1498 | .zan-panel::after { 1499 | content: ''; 1500 | position: absolute; 1501 | top: 0; 1502 | left: 0; 1503 | width: 200%; 1504 | height: 200%; 1505 | transform: scale(.5); 1506 | transform-origin: 0 0; 1507 | pointer-events: none; 1508 | box-sizing: border-box; 1509 | border: 0 solid #e5e5e5; 1510 | border-top-width: 2px; 1511 | border-bottom-width: 2px 1512 | } 1513 | 1514 | .zan-panel-title { 1515 | font-size: 24px; 1516 | line-height: 1; 1517 | color: #999; 1518 | padding: 40px 30px 0 30px 1519 | } 1520 | 1521 | .zan-panel--without-margin-top { 1522 | margin-top: 0 1523 | } 1524 | 1525 | .zan-panel--without-border::after { 1526 | border: 0 none 1527 | } 1528 | 1529 | .zan-popup { 1530 | visibility: hidden 1531 | } 1532 | 1533 | .zan-popup--show { 1534 | visibility: visible 1535 | } 1536 | 1537 | .zan-popup__mask { 1538 | position: fixed; 1539 | top: 0; 1540 | left: 0; 1541 | right: 0; 1542 | bottom: 0; 1543 | z-index: 10; 1544 | background: rgba(0, 0, 0, .7); 1545 | display: none 1546 | } 1547 | 1548 | .zan-popup__container { 1549 | position: fixed; 1550 | left: 50%; 1551 | top: 50%; 1552 | background: #fff; 1553 | transform: translate3d(-50%, -50%, 0); 1554 | transform-origin: center; 1555 | transition: all .4s ease; 1556 | z-index: 11; 1557 | opacity: 0 1558 | } 1559 | 1560 | .zan-popup--show .zan-popup__container { 1561 | opacity: 1 1562 | } 1563 | 1564 | .zan-popup--show .zan-popup__mask { 1565 | display: block 1566 | } 1567 | 1568 | .zan-popup--left .zan-popup__container { 1569 | left: 0; 1570 | top: auto; 1571 | transform: translate3d(-100%, 0, 0) 1572 | } 1573 | 1574 | .zan-popup--show.zan-popup--left .zan-popup__container { 1575 | transform: translate3d(0, 0, 0) 1576 | } 1577 | 1578 | .zan-popup--right .zan-popup__container { 1579 | right: 0; 1580 | top: auto; 1581 | left: auto; 1582 | transform: translate3d(100%, 0, 0) 1583 | } 1584 | 1585 | .zan-popup--show.zan-popup--right .zan-popup__container { 1586 | transform: translate3d(0, 0, 0) 1587 | } 1588 | 1589 | .zan-popup--bottom .zan-popup__container { 1590 | top: auto; 1591 | left: auto; 1592 | bottom: 0; 1593 | transform: translate3d(0, 100%, 0) 1594 | } 1595 | 1596 | .zan-popup--show.zan-popup--bottom .zan-popup__container { 1597 | transform: translate3d(0, 0, 0) 1598 | } 1599 | 1600 | .zan-popup--top .zan-popup__container { 1601 | top: 0; 1602 | left: auto; 1603 | transform: translate3d(0, -100%, 0) 1604 | } 1605 | 1606 | .zan-popup--show.zan-popup--top .zan-popup__container { 1607 | transform: translate3d(0, 0, 0) 1608 | } 1609 | 1610 | .zan-row:after { 1611 | content: ""; 1612 | display: table; 1613 | clear: both 1614 | } 1615 | 1616 | .zan-select__list .zan-select__radio { 1617 | display: none 1618 | } 1619 | 1620 | .zan-stepper { 1621 | color: #666 1622 | } 1623 | 1624 | .zan-stepper view { 1625 | display: inline-block; 1626 | line-height: 40px; 1627 | padding: 10px 0; 1628 | text-align: center; 1629 | min-width: 80px; 1630 | box-sizing: border-box; 1631 | vertical-align: middle; 1632 | font-size: 24px; 1633 | border: 1rpx solid #999 1634 | } 1635 | 1636 | .zan-stepper .zan-stepper__minus { 1637 | border-right: none; 1638 | border-radius: 4px 0 0 4px 1639 | } 1640 | 1641 | .zan-stepper .zan-stepper__text { 1642 | border: 1rpx solid #999; 1643 | display: inline-block; 1644 | text-align: center; 1645 | vertical-align: middle; 1646 | height: 60px; 1647 | width: 80px; 1648 | min-height: auto; 1649 | font-size: 24px; 1650 | line-height: 60px 1651 | } 1652 | 1653 | .zan-stepper .zan-stepper__plus { 1654 | border-left: none; 1655 | border-radius: 0 4px 4px 0 1656 | } 1657 | 1658 | .zan-stepper .zan-stepper--disabled { 1659 | background: #f8f8f8; 1660 | color: #bbb; 1661 | border-color: #e8e8e8 1662 | } 1663 | 1664 | .zan-stepper--small view { 1665 | min-width: 72px; 1666 | line-height: 36px 1667 | } 1668 | 1669 | .zan-stepper--small .zan-stepper__text { 1670 | width: 72px; 1671 | line-height: 56px; 1672 | height: 56px 1673 | } 1674 | 1675 | .zan-steps--steps.zan-steps--5 .zan-steps__step { 1676 | width: 25% 1677 | } 1678 | 1679 | .zan-steps--steps.zan-steps--4 .zan-steps__step { 1680 | width: 33% 1681 | } 1682 | 1683 | .zan-steps--steps.zan-steps--3 .zan-steps__step { 1684 | width: 50% 1685 | } 1686 | 1687 | .zan-steps--steps .zan-steps__step { 1688 | position: relative; 1689 | float: left; 1690 | padding-bottom: 50px; 1691 | color: #b1b1b1 1692 | } 1693 | 1694 | .zan-steps--steps .zan-steps__title { 1695 | transform: translateX(-50%); 1696 | font-size: 20px; 1697 | text-align: center 1698 | } 1699 | 1700 | .zan-steps--steps .zan-steps__icons { 1701 | position: absolute; 1702 | top: 60px; 1703 | left: -10px; 1704 | padding: 0 16px; 1705 | background-color: #fff; 1706 | z-index: 10 1707 | } 1708 | 1709 | .zan-steps--steps .zan-steps__circle { 1710 | display: block; 1711 | position: relative; 1712 | width: 10px; 1713 | height: 10px; 1714 | background-color: #e5e5e5; 1715 | border-radius: 50% 1716 | } 1717 | 1718 | .zan-steps--steps .zan-steps__line { 1719 | position: absolute; 1720 | left: 0; 1721 | top: 64px; 1722 | width: 100%; 1723 | height: 1px; 1724 | background-color: #e5e5e5 1725 | } 1726 | 1727 | .zan-steps--steps .zan-steps__step--done { 1728 | color: #333 1729 | } 1730 | 1731 | .zan-steps--steps .zan-steps__step--done .zan-steps__line { 1732 | background-color: #06bf04 1733 | } 1734 | 1735 | .zan-steps--steps .zan-steps__step--done .zan-steps__circle { 1736 | width: 10px; 1737 | height: 10px; 1738 | background-color: #09bb07 1739 | } 1740 | 1741 | .zan-steps--steps .zan-steps__step--cur .zan-steps__icons { 1742 | top: 50px; 1743 | left: -14px 1744 | } 1745 | 1746 | .zan-steps--steps .zan-steps__step--cur .zan-steps__circle { 1747 | width: 26px; 1748 | height: 26px; 1749 | background-image: url(https://b.yzcdn.cn/v2/image/wap/success_small@2x.png); 1750 | background-size: 26px 26px 1751 | } 1752 | 1753 | .zan-steps--steps .zan-steps__step--cur .zan-steps__line { 1754 | background-color: #e5e5e5 1755 | } 1756 | 1757 | .zan-steps--steps .zan-steps__step--first-child .zan-steps__title { 1758 | margin-left: 0; 1759 | transform: none; 1760 | text-align: left 1761 | } 1762 | 1763 | .zan-steps--steps .zan-steps__step--first-child .zan-steps__icons { 1764 | left: -14px 1765 | } 1766 | 1767 | .zan-steps--steps .zan-steps__step--last-child { 1768 | position: absolute; 1769 | right: 0; 1770 | top: 0; 1771 | text-align: right 1772 | } 1773 | 1774 | .zan-steps--steps .zan-steps__step--last-child .zan-steps__title { 1775 | transform: none; 1776 | text-align: right 1777 | } 1778 | 1779 | .zan-steps--steps .zan-steps__step--last-child .zan-steps__icons { 1780 | left: auto; 1781 | right: -12px 1782 | } 1783 | 1784 | .zan-steps--steps .zan-steps__step--last-child .zan-steps__line { 1785 | display: none 1786 | } 1787 | 1788 | .zan-steps--steps .zan-steps__step--db-title { 1789 | min-height: 58px 1790 | } 1791 | 1792 | .zan-steps--steps .zan-steps__step--db-title .zan-steps__line { 1793 | top: 90px 1794 | } 1795 | 1796 | .zan-steps--steps .zan-steps__step--db-title .zan-steps__icons { 1797 | top: 86px 1798 | } 1799 | 1800 | .zan-steps--steps .zan-steps__step--db-title.zan-steps__step--cur .zan-steps__icons { 1801 | top: 78px 1802 | } 1803 | 1804 | .zan-steps--vsteps { 1805 | color: #999; 1806 | font-size: 28px 1807 | } 1808 | 1809 | .zan-steps--vsteps .zan-steps__step { 1810 | position: relative; 1811 | padding: 30px 0 1812 | } 1813 | 1814 | .zan-steps--vsteps .zan-steps__step--done { 1815 | color: #4b0 1816 | } 1817 | 1818 | .zan-steps--vsteps .zan-steps__line { 1819 | position: absolute; 1820 | top: 0; 1821 | bottom: 0; 1822 | left: 14px; 1823 | width: 2px; 1824 | background-color: #e5e5e5 1825 | } 1826 | 1827 | .zan-steps--vsteps .zan-steps__title { 1828 | display: inline-block; 1829 | line-height: 40px; 1830 | padding-left: 54px 1831 | } 1832 | 1833 | .zan-steps--vsteps .zan-steps__title--desc { 1834 | padding-left: 6px 1835 | } 1836 | 1837 | .zan-steps--vsteps .zan-steps__icons { 1838 | position: absolute; 1839 | left: 14px; 1840 | top: 50%; 1841 | transform: translate(-50%, -50%); 1842 | z-index: 2; 1843 | padding: 6px 0; 1844 | background-color: #fff 1845 | } 1846 | 1847 | .zan-steps--vsteps .zan-steps__circle { 1848 | width: 10px; 1849 | height: 10px; 1850 | background-color: #cacaca; 1851 | border-radius: 20px 1852 | } 1853 | 1854 | .zan-steps--vsteps .zan-steps__step--done .zan-steps__circle { 1855 | width: 10px; 1856 | height: 10px; 1857 | background-color: #09bb07 1858 | } 1859 | 1860 | .zan-steps--vsteps .zan-steps__step--cur .zan-steps__circle { 1861 | width: 26px; 1862 | height: 26px; 1863 | background: transparent url(https://b.yzcdn.cn/v2/image/wap/success_small@2x.png); 1864 | background-size: 26px 26px; 1865 | border-radius: 0 1866 | } 1867 | 1868 | .zan-steps--vsteps .zan-steps__icon--active { 1869 | width: 26px; 1870 | height: 26px 1871 | } 1872 | 1873 | .zan-steps--vsteps .zan-steps__step--first-child .zan-steps__title::before { 1874 | content: ''; 1875 | position: absolute; 1876 | top: 0; 1877 | bottom: 50%; 1878 | left: 14px; 1879 | width: 2px; 1880 | background-color: #fff; 1881 | z-index: 1 1882 | } 1883 | 1884 | .zan-steps--vsteps .zan-steps__step--last-child .zan-steps__title::after { 1885 | content: ''; 1886 | position: absolute; 1887 | top: 50%; 1888 | bottom: 0; 1889 | left: 14px; 1890 | width: 2px; 1891 | background-color: #fff; 1892 | z-index: 1 1893 | } 1894 | 1895 | .zan-steps { 1896 | position: relative 1897 | } 1898 | 1899 | .zan-switch { 1900 | position: relative; 1901 | display: inline-block; 1902 | width: 104px; 1903 | height: 64px; 1904 | vertical-align: middle; 1905 | box-sizing: border-box; 1906 | border-radius: 16px; 1907 | background: #44db5e; 1908 | border: 2px solid #44db5e 1909 | } 1910 | 1911 | .zan-switch__circle { 1912 | position: absolute; 1913 | top: 0; 1914 | left: 0; 1915 | width: 60px; 1916 | height: 60px; 1917 | display: inline-block; 1918 | background: #fff; 1919 | border-radius: 30px; 1920 | box-sizing: border-box; 1921 | box-shadow: 0 0 0 2px rgba(0, 0, 0, .1), 0 6px 2px 0 rgba(0, 0, 0, .05), 0 4px 4px 0 rgba(0, 0, 0, .1), 0 6px 6px 0 rgba(0, 0, 0, .05); 1922 | transition: transform .35s cubic-bezier(.45, 1, .4, 1); 1923 | z-index: 2 1924 | } 1925 | 1926 | .zan-switch__bg { 1927 | position: absolute; 1928 | top: -2px; 1929 | left: -2px; 1930 | width: 104px; 1931 | height: 64px; 1932 | background: #fff; 1933 | border-radius: 52px; 1934 | display: inline-block; 1935 | border: 2px solid #e5e5e5; 1936 | box-sizing: border-box; 1937 | transition: transform .35s cubic-bezier(.45, 1, .4, 1); 1938 | transform: scale(0); 1939 | transform-origin: 72px 32px 1940 | } 1941 | 1942 | .zan-switch--on .zan-switch__circle { 1943 | transform: translateX(40px) 1944 | } 1945 | 1946 | .zan-switch--off .zan-switch__bg { 1947 | transform: scale(1) 1948 | } 1949 | 1950 | .zan-swtich--disabled { 1951 | opacity: .4 1952 | } 1953 | 1954 | .zan-switch__loading { 1955 | position: absolute; 1956 | left: 14px; 1957 | top: 14px; 1958 | width: 32px; 1959 | height: 32px; 1960 | background: url(https://img.yzcdn.cn/public_files/2017/02/24/9acec77d91106cd15b8107c4633d9155.png) no-repeat; 1961 | background-size: 32px 32px; 1962 | animation: zan-switch-loading .8s infinite linear 1963 | } 1964 | 1965 | @keyframes zan-switch-loading { 1966 | from { 1967 | transform: rotate(0) 1968 | } 1969 | to { 1970 | transform: rotate(360deg) 1971 | } 1972 | } 1973 | 1974 | .zan-tab { 1975 | height: 90px 1976 | } 1977 | 1978 | .zan-tab__bd { 1979 | width: 750rpx; 1980 | display: flex; 1981 | flex-direction: row; 1982 | border-bottom: 1rpx solid #e5e5e5; 1983 | background: #fff 1984 | } 1985 | 1986 | .zan-tab__bd--fixed { 1987 | position: fixed; 1988 | top: 0; 1989 | z-index: 2 1990 | } 1991 | 1992 | .zan-tab__item { 1993 | flex: 1; 1994 | display: inline-block; 1995 | padding: 0 20px; 1996 | line-height: 0; 1997 | box-sizing: border-box; 1998 | overflow: hidden; 1999 | text-align: center 2000 | } 2001 | 2002 | .zan-tab__title { 2003 | display: inline-block; 2004 | max-width: 100%; 2005 | height: 88px; 2006 | line-height: 88px; 2007 | overflow: hidden; 2008 | text-overflow: ellipsis; 2009 | box-sizing: border-box; 2010 | word-break: keep-all; 2011 | font-size: 28px; 2012 | color: #666 2013 | } 2014 | 2015 | .zan-tab__item--selected .zan-tab__title { 2016 | color: #f44; 2017 | border-bottom: 4px solid #f44 2018 | } 2019 | 2020 | .zan-tab__bd--scroll { 2021 | display: block; 2022 | white-space: nowrap 2023 | } 2024 | 2025 | .zan-tab__bd--scroll .zan-tab__item { 2026 | min-width: 160px 2027 | } 2028 | 2029 | .zan-tag { 2030 | display: inline-block; 2031 | position: relative; 2032 | box-sizing: border-box; 2033 | line-height: 32px; 2034 | padding: 0 10px; 2035 | border-radius: 4px; 2036 | font-size: 22px; 2037 | background: #c9c9c9; 2038 | text-align: center; 2039 | color: #fff 2040 | } 2041 | 2042 | .zan-tag::after { 2043 | content: ''; 2044 | position: absolute; 2045 | top: 0; 2046 | left: 0; 2047 | width: 200%; 2048 | height: 200%; 2049 | transform: scale(.5); 2050 | transform-origin: 0 0; 2051 | pointer-events: none; 2052 | box-sizing: border-box; 2053 | border: 0 solid #e5e5e5; 2054 | border-width: 2px; 2055 | border-radius: 8px 2056 | } 2057 | 2058 | .zan-tag--plain { 2059 | color: #c9c9c9; 2060 | background: #fff 2061 | } 2062 | 2063 | .zan-tag--primary { 2064 | color: #fff; 2065 | background-color: #4b0 2066 | } 2067 | 2068 | .zan-tag--primary::after { 2069 | border-color: #4b0 2070 | } 2071 | 2072 | .zan-tag--primary.zan-tag--plain { 2073 | color: #4b0; 2074 | background: #fff 2075 | } 2076 | 2077 | .zan-tag--danger { 2078 | color: #fff; 2079 | background: #f44 2080 | } 2081 | 2082 | .zan-tag--danger::after { 2083 | border-color: #f44 2084 | } 2085 | 2086 | .zan-tag--danger.zan-tag--plain { 2087 | color: #f44; 2088 | background: #fff 2089 | } 2090 | 2091 | .zan-tag--warn { 2092 | color: #fff; 2093 | background: #f85 2094 | } 2095 | 2096 | .zan-tag--warn::after { 2097 | border-color: #f85 2098 | } 2099 | 2100 | .zan-tag--warn.zan-tag--plain { 2101 | color: #f85; 2102 | background: #fff 2103 | } 2104 | 2105 | .zan-tag--disabled { 2106 | color: #999!important; 2107 | background: #e5e5e5 2108 | } 2109 | 2110 | .zan-tag--disabled::after { 2111 | border-color: #ccc 2112 | } 2113 | 2114 | .zan-toast { 2115 | position: fixed; 2116 | top: 35%; 2117 | left: 50%; 2118 | transform: translate3d(-50%, -50%, 0); 2119 | background: rgba(0, 0, 0, .7); 2120 | color: #fff; 2121 | font-size: 28px; 2122 | line-height: 1.5em; 2123 | margin: 0 auto; 2124 | box-sizing: border-box; 2125 | padding: 20px 20px; 2126 | text-align: center; 2127 | border-radius: 8px; 2128 | z-index: 100 2129 | } 2130 | 2131 | .zan-toast--notitle { 2132 | padding: 36px 2133 | } 2134 | 2135 | .zan-toast__icon { 2136 | width: 80px; 2137 | height: 80px; 2138 | line-height: 80px; 2139 | margin: 0 auto; 2140 | padding: 24px 30px; 2141 | font-size: 76px; 2142 | text-align: center 2143 | } 2144 | 2145 | .zan-toast__icon-loading { 2146 | line-height: 0 2147 | } 2148 | 2149 | .zan-toast__icon-loading .zan-loading { 2150 | width: 80px; 2151 | height: 80px 2152 | } 2153 | 2154 | .zan-toast__icon-image { 2155 | background-size: 80px; 2156 | background-position: center; 2157 | background-repeat: no-repeat 2158 | } 2159 | 2160 | .zan-toptips { 2161 | display: block; 2162 | position: fixed; 2163 | -webkit-transform: translateZ(0) translateY(-100%); 2164 | width: 100%; 2165 | min-height: 64px; 2166 | top: 0; 2167 | line-height: 2.3; 2168 | font-size: 28px; 2169 | text-align: center; 2170 | color: #fff; 2171 | background-color: #e64340; 2172 | z-index: 110; 2173 | opacity: 0; 2174 | transition: all .4s ease 2175 | } 2176 | 2177 | .zan-toptips--show { 2178 | -webkit-transform: translateZ(0) translateY(0); 2179 | opacity: 1 2180 | } 2181 | -------------------------------------------------------------------------------- /bottom-navigation/main.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import App from './App' 3 | 4 | Vue.config.productionTip = false 5 | 6 | App.mpType = 'app' 7 | 8 | const app = new Vue({ 9 | ...App 10 | }) 11 | app.$mount() 12 | -------------------------------------------------------------------------------- /bottom-navigation/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "name" : "bottom-navigation", 3 | "appid" : "__UNI__EAAC2DD", 4 | "description": "", 5 | "versionName": "1.0.0", 6 | "versionCode": "100", 7 | "app-plus": { /* 5+App特有相关 */ 8 | "modules": { /* 模块配置 */ 9 | 10 | }, 11 | "distribute": { /* 应用发布信息 */ 12 | "android": { /* android打包配置 */ 13 | "permissions": ["", 14 | "", 15 | "", 16 | "", 17 | "", 18 | "", 19 | "", 20 | "", 21 | "", 22 | "", 23 | "", 24 | "", 25 | "", 26 | "", 27 | "", 28 | "", 29 | "", 30 | "", 31 | "", 32 | "", 33 | "", 34 | "" 35 | ] 36 | }, 37 | "ios": { /* ios打包配置 */ 38 | 39 | }, 40 | "sdkConfigs": { /* SDK配置 */ 41 | 42 | } 43 | } 44 | }, 45 | "quickapp": { /* 快应用特有相关 */ 46 | 47 | }, 48 | "mp-weixin": { /* 小程序特有相关 */ 49 | "appid": "" 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /bottom-navigation/pages.json: -------------------------------------------------------------------------------- 1 | { 2 | "pages": [ //pages数组中第一项表示应用启动页 3 | { 4 | "path": "pages/tabs/tabs", 5 | "style": { 6 | "navigationBarTitleText": "自定义底部导航栏" 7 | } 8 | } 9 | ], 10 | "globalStyle": { 11 | "navigationBarTextStyle": "black", 12 | "navigationBarTitleText": "uni-app", 13 | "navigationBarBackgroundColor": "#F8F8F8", 14 | "backgroundColor": "#F8F8F8" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /bottom-navigation/pages/tabs/tabs.vue: -------------------------------------------------------------------------------- 1 | 54 | 55 | 75 | 76 | 148 | -------------------------------------------------------------------------------- /bottom-navigation/unpackage/dist/dev/app-plus/bottom-navigation/__uniappchooselocation.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 233 | 234 | 235 | 236 |
237 | 245 |
246 |
247 |
248 |
    249 | 250 |
251 |
252 |
253 |

对不起,没有搜索到相关数据!

254 |
255 |
256 |

亲,没有更多了~

257 |
258 |
259 |
260 |
261 |
262 | 263 |
264 |
265 |
    266 | 267 |
268 |
269 |

对不起,没有搜索到相关数据!

270 |
271 |
272 |
273 | 555 | 556 | 557 | 558 | -------------------------------------------------------------------------------- /bottom-navigation/unpackage/dist/dev/app-plus/bottom-navigation/__uniappmap.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 22 | 23 | 24 | 25 |
26 | 27 |
28 | 93 | 94 | 95 | 96 | -------------------------------------------------------------------------------- /bottom-navigation/unpackage/dist/dev/app-plus/bottom-navigation/__uniappmarker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lygustas/uni-app-bottom-navigation/07c5609137f1bf5925c70ad5f3a07d5c7d3d415a/bottom-navigation/unpackage/dist/dev/app-plus/bottom-navigation/__uniappmarker.png -------------------------------------------------------------------------------- /bottom-navigation/unpackage/dist/dev/app-plus/bottom-navigation/__uniappopenlocation.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 91 | 92 | 93 | 94 |
95 |
96 |
97 |
98 | 99 | 100 |
101 | 102 | 103 |
104 |
105 |
106 |
107 | 214 | 215 | 216 | 217 | -------------------------------------------------------------------------------- /bottom-navigation/unpackage/dist/dev/app-plus/bottom-navigation/__uniappscan.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 扫码 8 | 22 | 23 | 24 | 25 |
26 |
27 | 60 | 61 | 62 | 63 | -------------------------------------------------------------------------------- /bottom-navigation/unpackage/dist/dev/app-plus/bottom-navigation/__uniappservice.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Service 8 | 14 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /bottom-navigation/unpackage/dist/dev/app-plus/bottom-navigation/__uniappsuccess.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lygustas/uni-app-bottom-navigation/07c5609137f1bf5925c70ad5f3a07d5c7d3d415a/bottom-navigation/unpackage/dist/dev/app-plus/bottom-navigation/__uniappsuccess.png -------------------------------------------------------------------------------- /bottom-navigation/unpackage/dist/dev/app-plus/bottom-navigation/__uniappview.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 8 | View 9 | 15 | 18 | 27 | 28 | 29 | 30 | 31 |
32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /bottom-navigation/unpackage/dist/dev/app-plus/bottom-navigation/app-view.js: -------------------------------------------------------------------------------- 1 | var __pageFrameStartTime__ = Date.now(); 2 | var __webviewId__; 3 | var __wxAppCode__ = {}; 4 | var __WXML_GLOBAL__ = { 5 | entrys: {}, 6 | defines: {}, 7 | modules: {}, 8 | ops: [], 9 | wxs_nf_init: undefined, 10 | total_ops: 0 11 | }; 12 | var $gwx; 13 | 14 | /*v0.6vv_20180111_fbi*/ 15 | window.__wcc_version__='v0.6vv_20180111_fbi' 16 | window.__wcc_version_info__={"customComponents":true,"fixZeroRpx":true} 17 | var $gwxc 18 | var $gaic={} 19 | $gwx=function(path,global){ 20 | if(typeof global === 'undefined') global={}; 21 | if(typeof __WXML_GLOBAL__ === 'undefined') __WXML_GLOBAL__={}; 22 | function _(a,b){if(typeof(b)!='undefined')a.children.push(b);} 23 | function _v(k){if(typeof(k)!='undefined')return {tag:'virtual','wxKey':k,children:[]};return {tag:'virtual',children:[]};} 24 | function _n(tag){$gwxc++;if($gwxc>=16000){throw 'Dom limit exceeded, please check if there\'s any mistake you\'ve made.'};return {tag:'wx-'+tag,attr:{},children:[],n:[],raw:{},generics:{}}} 25 | function _p(a,b){b&&a.properities.push(b);} 26 | function _s(scope,env,key){return typeof(scope[key])!='undefined'?scope[key]:env[key]} 27 | function _wp(m){console.warn("WXMLRT_$gwx:"+m)} 28 | function _wl(tname,prefix){_wp(prefix+':-1:-1:-1: Template `' + tname + '` is being called recursively, will be stop.')} 29 | $gwn=console.warn; 30 | $gwl=console.log; 31 | function $gwh() 32 | { 33 | function x() 34 | { 35 | } 36 | x.prototype = 37 | { 38 | hn: function( obj, all ) 39 | { 40 | if( typeof(obj) == 'object' ) 41 | { 42 | var cnt=0; 43 | var any1=false,any2=false; 44 | for(var x in obj) 45 | { 46 | any1=any1|x==='__value__'; 47 | any2=any2|x==='__wxspec__'; 48 | cnt++; 49 | if(cnt>2)break; 50 | } 51 | return cnt == 2 && any1 && any2 && ( all || obj.__wxspec__ !== 'm' || this.hn(obj.__value__) === 'h' ) ? "h" : "n"; 52 | } 53 | return "n"; 54 | }, 55 | nh: function( obj, special ) 56 | { 57 | return { __value__: obj, __wxspec__: special ? special : true } 58 | }, 59 | rv: function( obj ) 60 | { 61 | return this.hn(obj,true)==='n'?obj:this.rv(obj.__value__); 62 | }, 63 | hm: function( obj ) 64 | { 65 | if( typeof(obj) == 'object' ) 66 | { 67 | var cnt=0; 68 | var any1=false,any2=false; 69 | for(var x in obj) 70 | { 71 | any1=any1|x==='__value__'; 72 | any2=any2|x==='__wxspec__'; 73 | cnt++; 74 | if(cnt>2)break; 75 | } 76 | return cnt == 2 && any1 && any2 && (obj.__wxspec__ === 'm' || this.hm(obj.__value__) ); 77 | } 78 | return false; 79 | } 80 | } 81 | return new x; 82 | } 83 | wh=$gwh(); 84 | function $gstack(s){ 85 | var tmp=s.split('\n '+' '+' '+' '); 86 | for(var i=0;i=': 137 | case '<=': 138 | case '>': 139 | case '<': 140 | case '<<': 141 | case '>>': 142 | _a = rev( ops[1], e, s, g, o, _f ); 143 | _b = rev( ops[2], e, s, g, o, _f ); 144 | _c = should_pass_type_info && (wh.hn( _a ) === 'h' || wh.hn( _b ) === 'h'); 145 | switch( rop ) 146 | { 147 | case '+': 148 | _d = wh.rv( _a ) + wh.rv( _b ); 149 | break; 150 | case '*': 151 | _d = wh.rv( _a ) * wh.rv( _b ); 152 | break; 153 | case '/': 154 | _d = wh.rv( _a ) / wh.rv( _b ); 155 | break; 156 | case '%': 157 | _d = wh.rv( _a ) % wh.rv( _b ); 158 | break; 159 | case '|': 160 | _d = wh.rv( _a ) | wh.rv( _b ); 161 | break; 162 | case '^': 163 | _d = wh.rv( _a ) ^ wh.rv( _b ); 164 | break; 165 | case '&': 166 | _d = wh.rv( _a ) & wh.rv( _b ); 167 | break; 168 | case '===': 169 | _d = wh.rv( _a ) === wh.rv( _b ); 170 | break; 171 | case '==': 172 | _d = wh.rv( _a ) == wh.rv( _b ); 173 | break; 174 | case '!=': 175 | _d = wh.rv( _a ) != wh.rv( _b ); 176 | break; 177 | case '!==': 178 | _d = wh.rv( _a ) !== wh.rv( _b ); 179 | break; 180 | case '>=': 181 | _d = wh.rv( _a ) >= wh.rv( _b ); 182 | break; 183 | case '<=': 184 | _d = wh.rv( _a ) <= wh.rv( _b ); 185 | break; 186 | case '>': 187 | _d = wh.rv( _a ) > wh.rv( _b ); 188 | break; 189 | case '<': 190 | _d = wh.rv( _a ) < wh.rv( _b ); 191 | break; 192 | case '<<': 193 | _d = wh.rv( _a ) << wh.rv( _b ); 194 | break; 195 | case '>>': 196 | _d = wh.rv( _a ) >> wh.rv( _b ); 197 | break; 198 | default: 199 | break; 200 | } 201 | return _c ? wh.nh( _d, "c" ) : _d; 202 | break; 203 | case '-': 204 | _a = ops.length === 3 ? rev( ops[1], e, s, g, o, _f ) : 0; 205 | _b = ops.length === 3 ? rev( ops[2], e, s, g, o, _f ) : rev( ops[1], e, s, g, o, _f ); 206 | _c = should_pass_type_info && (wh.hn( _a ) === 'h' || wh.hn( _b ) === 'h'); 207 | _d = _c ? wh.rv( _a ) - wh.rv( _b ) : _a - _b; 208 | return _c ? wh.nh( _d, "c" ) : _d; 209 | break; 210 | case '!': 211 | _a = rev( ops[1], e, s, g, o, _f ); 212 | _c = should_pass_type_info && (wh.hn( _a ) == 'h'); 213 | _d = !wh.rv(_a); 214 | return _c ? wh.nh( _d, "c" ) : _d; 215 | case '~': 216 | _a = rev( ops[1], e, s, g, o, _f ); 217 | _c = should_pass_type_info && (wh.hn( _a ) == 'h'); 218 | _d = ~wh.rv(_a); 219 | return _c ? wh.nh( _d, "c" ) : _d; 220 | default: 221 | $gwn('unrecognized op' + rop ); 222 | } 223 | } 224 | function rev( ops, e, s, g, o, newap ) 225 | { 226 | var op = ops[0]; 227 | var _f = false; 228 | if ( typeof newap !== "undefined" ) o.ap = newap; 229 | if( typeof(op)==='object' ) 230 | { 231 | var vop=op[0]; 232 | var _a, _aa, _b, _bb, _c, _d, _s, _e, _ta, _tb, _td; 233 | switch(vop) 234 | { 235 | case 2: 236 | return ArithmeticEv(ops,e,s,g,o); 237 | break; 238 | case 4: 239 | return rev( ops[1], e, s, g, o, _f ); 240 | break; 241 | case 5: 242 | switch( ops.length ) 243 | { 244 | case 2: 245 | _a = rev( ops[1],e,s,g,o,_f ); 246 | return should_pass_type_info?[_a]:[wh.rv(_a)]; 247 | return [_a]; 248 | break; 249 | case 1: 250 | return []; 251 | break; 252 | default: 253 | _a = rev( ops[1],e,s,g,o,_f ); 254 | _b = rev( ops[2],e,s,g,o,_f ); 255 | _a.push( 256 | should_pass_type_info ? 257 | _b : 258 | wh.rv( _b ) 259 | ); 260 | return _a; 261 | break; 262 | } 263 | break; 264 | case 6: 265 | _a = rev(ops[1],e,s,g,o); 266 | var ap = o.ap; 267 | _ta = wh.hn(_a)==='h'; 268 | _aa = _ta ? wh.rv(_a) : _a; 269 | o.is_affected |= _ta; 270 | if( should_pass_type_info ) 271 | { 272 | if( _aa===null || typeof(_aa) === 'undefined' ) 273 | { 274 | return _ta ? wh.nh(undefined, 'e') : undefined; 275 | } 276 | _b = rev(ops[2],e,s,g,o,_f); 277 | _tb = wh.hn(_b) === 'h'; 278 | _bb = _tb ? wh.rv(_b) : _b; 279 | o.ap = ap; 280 | o.is_affected |= _tb; 281 | if( _bb===null || typeof(_bb) === 'undefined' || 282 | _bb === "__proto__" || _bb === "prototype" || _bb === "caller" ) 283 | { 284 | return (_ta || _tb) ? wh.nh(undefined, 'e') : undefined; 285 | } 286 | _d = _aa[_bb]; 287 | if ( typeof _d === 'function' && !ap ) _d = undefined; 288 | _td = wh.hn(_d)==='h'; 289 | o.is_affected |= _td; 290 | return (_ta || _tb) ? (_td ? _d : wh.nh(_d, 'e')) : _d; 291 | } 292 | else 293 | { 294 | if( _aa===null || typeof(_aa) === 'undefined' ) 295 | { 296 | return undefined; 297 | } 298 | _b = rev(ops[2],e,s,g,o,_f); 299 | _tb = wh.hn(_b) === 'h'; 300 | _bb = _tb ? wh.rv(_b) : _b; 301 | o.ap = ap; 302 | o.is_affected |= _tb; 303 | if( _bb===null || typeof(_bb) === 'undefined' || 304 | _bb === "__proto__" || _bb === "prototype" || _bb === "caller" ) 305 | { 306 | return undefined; 307 | } 308 | _d = _aa[_bb]; 309 | if ( typeof _d === 'function' && !ap ) _d = undefined; 310 | _td = wh.hn(_d)==='h'; 311 | o.is_affected |= _td; 312 | return _td ? wh.rv(_d) : _d; 313 | } 314 | case 7: 315 | switch(ops[1][0]) 316 | { 317 | case 11: 318 | o.is_affected |= wh.hn(g)==='h'; 319 | return g; 320 | case 3: 321 | _s = wh.rv( s ); 322 | _e = wh.rv( e ); 323 | _b = ops[1][1]; 324 | if (g && g.f && g.f.hasOwnProperty(_b) ) 325 | { 326 | _a = g.f; 327 | o.ap = true; 328 | } 329 | else 330 | { 331 | _a = _s && _s.hasOwnProperty(_b) ? 332 | s : (_e && _e.hasOwnProperty(_b) ? e : undefined ); 333 | } 334 | if( should_pass_type_info ) 335 | { 336 | if( _a ) 337 | { 338 | _ta = wh.hn(_a) === 'h'; 339 | _aa = _ta ? wh.rv( _a ) : _a; 340 | _d = _aa[_b]; 341 | _td = wh.hn(_d) === 'h'; 342 | o.is_affected |= _ta || _td; 343 | _d = _ta && !_td ? wh.nh(_d,'e') : _d; 344 | return _d; 345 | } 346 | } 347 | else 348 | { 349 | if( _a ) 350 | { 351 | _ta = wh.hn(_a) === 'h'; 352 | _aa = _ta ? wh.rv( _a ) : _a; 353 | _d = _aa[_b]; 354 | _td = wh.hn(_d) === 'h'; 355 | o.is_affected |= _ta || _td; 356 | return wh.rv(_d); 357 | } 358 | } 359 | return undefined; 360 | } 361 | break; 362 | case 8: 363 | _a = {}; 364 | _a[ops[1]] = rev(ops[2],e,s,g,o,_f); 365 | return _a; 366 | break; 367 | case 9: 368 | _a = rev(ops[1],e,s,g,o,_f); 369 | _b = rev(ops[2],e,s,g,o,_f); 370 | function merge( _a, _b, _ow ) 371 | { 372 | var ka, _bbk; 373 | _ta = wh.hn(_a)==='h'; 374 | _tb = wh.hn(_b)==='h'; 375 | _aa = wh.rv(_a); 376 | _bb = wh.rv(_b); 377 | for(var k in _bb) 378 | { 379 | if ( _ow || !_aa.hasOwnProperty(k) ) 380 | { 381 | _aa[k] = should_pass_type_info ? (_tb ? wh.nh(_bb[k],'e') : _bb[k]) : wh.rv(_bb[k]); 382 | } 383 | } 384 | return _a; 385 | } 386 | var _c = _a 387 | var _ow = true 388 | if ( typeof(ops[1][0]) === "object" && ops[1][0][0] === 10 ) { 389 | _a = _b 390 | _b = _c 391 | _ow = false 392 | } 393 | if ( typeof(ops[1][0]) === "object" && ops[1][0][0] === 10 ) { 394 | var _r = {} 395 | return merge( merge( _r, _a, _ow ), _b, _ow ); 396 | } 397 | else 398 | return merge( _a, _b, _ow ); 399 | break; 400 | case 10: 401 | _a = rev(ops[1],e,s,g,o,_f); 402 | _a = should_pass_type_info ? _a : wh.rv( _a ); 403 | return _a ; 404 | break; 405 | case 12: 406 | var _r; 407 | _a = rev(ops[1],e,s,g,o); 408 | if ( !o.ap ) 409 | { 410 | return should_pass_type_info && wh.hn(_a)==='h' ? wh.nh( _r, 'f' ) : _r; 411 | } 412 | var ap = o.ap; 413 | _b = rev(ops[2],e,s,g,o,_f); 414 | o.ap = ap; 415 | _ta = wh.hn(_a)==='h'; 416 | _tb = _ca(_b); 417 | _aa = wh.rv(_a); 418 | _bb = wh.rv(_b); snap_bb=$gdc(_bb,"nv_"); 419 | try{ 420 | _r = typeof _aa === "function" ? $gdc(_aa.apply(null, snap_bb)) : undefined; 421 | } catch (e){ 422 | e.message = e.message.replace(/nv_/g,""); 423 | e.stack = e.stack.substring(0,e.stack.indexOf("\n", e.stack.lastIndexOf("at nv_"))); 424 | e.stack = e.stack.replace(/\snv_/g," "); 425 | e.stack = $gstack(e.stack); 426 | if("undefined"!==typeof debugInfo) 427 | e.stack += "\n "+" "+" "+" at "+debugInfo[g.opindex][0]+":"+debugInfo[g.opindex][1]+":"+debugInfo[g.opindex][2]; 428 | throw e; 429 | } 430 | return should_pass_type_info && (_tb || _ta) ? wh.nh( _r, 'f' ) : _r; 431 | } 432 | } 433 | else 434 | { 435 | if( op === 3 || op === 1) return ops[1]; 436 | else if( op === 11 ) 437 | { 438 | var _a=''; 439 | for( var i = 1 ; i < ops.length ; i++ ) 440 | { 441 | var xp = wh.rv(rev(ops[i],e,s,g,o,_f)); 442 | _a += typeof(xp) === 'undefined' ? '' : xp; 443 | } 444 | return _a; 445 | } 446 | } 447 | } 448 | return rev; 449 | } 450 | gra=$gwrt(true); 451 | grb=$gwrt(false); 452 | function TestTest( expr, ops, e,s,g, expect_a, expect_b, expect_affected ) 453 | { 454 | { 455 | var o = {is_affected:false}; 456 | var a = gra( ops, e,s,g, o ); 457 | if( JSON.stringify(a) != JSON.stringify( expect_a ) 458 | || o.is_affected != expect_affected ) 459 | { 460 | console.warn( "A. " + expr + " get result " + JSON.stringify(a) + ", " + o.is_affected + ", but " + JSON.stringify( expect_a ) + ", " + expect_affected + " is expected" ); 461 | } 462 | } 463 | { 464 | var o = {is_affected:false}; 465 | var a = grb( ops, e,s,g, o ); 466 | if( JSON.stringify(a) != JSON.stringify( expect_b ) 467 | || o.is_affected != expect_affected ) 468 | { 469 | console.warn( "B. " + expr + " get result " + JSON.stringify(a) + ", " + o.is_affected + ", but " + JSON.stringify( expect_b ) + ", " + expect_affected + " is expected" ); 470 | } 471 | } 472 | } 473 | 474 | function wfor( to_iter, func, env, _s, global, father, itemname, indexname, keyname ) 475 | { 476 | var _n = wh.hn( to_iter ) === 'n'; 477 | var scope = wh.rv( _s ); 478 | var has_old_item = scope.hasOwnProperty(itemname); 479 | var has_old_index = scope.hasOwnProperty(indexname); 480 | var old_item = scope[itemname]; 481 | var old_index = scope[indexname]; 482 | var full = Object.prototype.toString.call(wh.rv(to_iter)); 483 | var type = full[8]; 484 | if( type === 'N' && full[10] === 'l' ) type = 'X'; 485 | var _y; 486 | if( _n ) 487 | { 488 | if( type === 'A' ) 489 | { 490 | var r_iter_item; 491 | for( var i = 0 ; i < to_iter.length ; i++ ) 492 | { 493 | scope[itemname] = to_iter[i]; 494 | scope[indexname] = _n ? i : wh.nh(i, 'h'); 495 | r_iter_item = wh.rv(to_iter[i]); 496 | var key = keyname && r_iter_item ? (keyname==="*this" ? r_iter_item : wh.rv(r_iter_item[keyname])) : undefined; 497 | _y = _v(key); 498 | _(father,_y); 499 | func( env, scope, _y, global ); 500 | } 501 | } 502 | else if( type === 'O' ) 503 | { 504 | var i = 0; 505 | var r_iter_item; 506 | for( var k in to_iter ) 507 | { 508 | scope[itemname] = to_iter[k]; 509 | scope[indexname] = _n ? k : wh.nh(k, 'h'); 510 | r_iter_item = wh.rv(to_iter[k]); 511 | var key = keyname && r_iter_item ? (keyname==="*this" ? r_iter_item : wh.rv(r_iter_item[keyname])) : undefined; 512 | _y = _v(key); 513 | _(father,_y); 514 | func( env,scope,_y,global ); 515 | i++; 516 | } 517 | } 518 | else if( type === 'S' ) 519 | { 520 | for( var i = 0 ; i < to_iter.length ; i++ ) 521 | { 522 | scope[itemname] = to_iter[i]; 523 | scope[indexname] = _n ? i : wh.nh(i, 'h'); 524 | _y = _v( to_iter[i] + i ); 525 | _(father,_y); 526 | func( env,scope,_y,global ); 527 | } 528 | } 529 | else if( type === 'N' ) 530 | { 531 | for( var i = 0 ; i < to_iter ; i++ ) 532 | { 533 | scope[itemname] = i; 534 | scope[indexname] = _n ? i : wh.nh(i, 'h'); 535 | _y = _v( i ); 536 | _(father,_y); 537 | func(env,scope,_y,global); 538 | } 539 | } 540 | else 541 | { 542 | } 543 | } 544 | else 545 | { 546 | var r_to_iter = wh.rv(to_iter); 547 | var r_iter_item, iter_item; 548 | if( type === 'A' ) 549 | { 550 | for( var i = 0 ; i < r_to_iter.length ; i++ ) 551 | { 552 | iter_item = r_to_iter[i]; 553 | iter_item = wh.hn(iter_item)==='n' ? wh.nh(iter_item,'h') : iter_item; 554 | r_iter_item = wh.rv( iter_item ); 555 | scope[itemname] = iter_item 556 | scope[indexname] = _n ? i : wh.nh(i, 'h'); 557 | var key = keyname && r_iter_item ? (keyname==="*this" ? r_iter_item : wh.rv(r_iter_item[keyname])) : undefined; 558 | _y = _v(key); 559 | _(father,_y); 560 | func( env, scope, _y, global ); 561 | } 562 | } 563 | else if( type === 'O' ) 564 | { 565 | var i=0; 566 | for( var k in r_to_iter ) 567 | { 568 | iter_item = r_to_iter[k]; 569 | iter_item = wh.hn(iter_item)==='n'? wh.nh(iter_item,'h') : iter_item; 570 | r_iter_item = wh.rv( iter_item ); 571 | scope[itemname] = iter_item; 572 | scope[indexname] = _n ? k : wh.nh(k, 'h'); 573 | var key = keyname && r_iter_item ? (keyname==="*this" ? r_iter_item : wh.rv(r_iter_item[keyname])) : undefined; 574 | _y=_v(key); 575 | _(father,_y); 576 | func( env, scope, _y, global ); 577 | i++ 578 | } 579 | } 580 | else if( type === 'S' ) 581 | { 582 | for( var i = 0 ; i < r_to_iter.length ; i++ ) 583 | { 584 | iter_item = wh.nh(r_to_iter[i],'h'); 585 | scope[itemname] = iter_item; 586 | scope[indexname] = _n ? i : wh.nh(i, 'h'); 587 | _y = _v( to_iter[i] + i ); 588 | _(father,_y); 589 | func( env, scope, _y, global ); 590 | } 591 | } 592 | else if( type === 'N' ) 593 | { 594 | for( var i = 0 ; i < r_to_iter ; i++ ) 595 | { 596 | iter_item = wh.nh(i,'h'); 597 | scope[itemname] = iter_item; 598 | scope[indexname]= _n ? i : wh.nh(i,'h'); 599 | _y = _v( i ); 600 | _(father,_y); 601 | func(env,scope,_y,global); 602 | } 603 | } 604 | else 605 | { 606 | } 607 | } 608 | if(has_old_item) 609 | { 610 | scope[itemname]=old_item; 611 | } 612 | else 613 | { 614 | delete scope[itemname]; 615 | } 616 | if(has_old_index) 617 | { 618 | scope[indexname]=old_index; 619 | } 620 | else 621 | { 622 | delete scope[indexname]; 623 | } 624 | } 625 | 626 | function _ca(o) 627 | { 628 | if ( wh.hn(o) == 'h' ) return true; 629 | if ( typeof o !== "object" ) return false; 630 | for(var i in o){ 631 | if ( o.hasOwnProperty(i) ){ 632 | if (_ca(o[i])) return true; 633 | } 634 | } 635 | return false; 636 | } 637 | function _da( node, attrname, opindex, raw, o ) 638 | { 639 | var isaffected = false; 640 | if ( o.is_affected || _ca(raw) ) 641 | { 642 | node.n.push( attrname ); 643 | node.raw[attrname] = raw; 644 | var value = $gdc( raw, "" ); 645 | return value; 646 | } 647 | else 648 | { 649 | return raw; 650 | } 651 | } 652 | function _r( node, attrname, opindex, env, scope, global ) 653 | { 654 | global.opindex=opindex; 655 | var o = {}, _env; 656 | var a = grb( z[opindex], env, scope, global, o ); 657 | a = _da( node, attrname, opindex, a, o ); 658 | node.attr[attrname] = a; 659 | } 660 | function _o( opindex, env, scope, global ) 661 | { 662 | global.opindex=opindex; 663 | var nothing = {}; 664 | return grb( z[opindex], env, scope, global, nothing ); 665 | } 666 | function _1( opindex, env, scope, global, o ) 667 | { 668 | var o = o || {}; 669 | global.opindex=opindex; 670 | return gra( z[opindex], env, scope, global, o ); 671 | } 672 | function _2( opindex, func, env, scope, global, father, itemname, indexname, keyname ) 673 | { 674 | var o = {}; 675 | var to_iter = _1( opindex, env, scope, global ); 676 | wfor( to_iter, func, env, scope, global, father, itemname, indexname, keyname ); 677 | } 678 | 679 | 680 | function _m(tag,attrs,generics,env,scope,global) 681 | { 682 | var tmp=_n(tag); 683 | var base=0; 684 | for(var i = 0 ; i < attrs.length ; i+=2 ) 685 | { 686 | if(base+attrs[i+1]<0) 687 | { 688 | tmp.attr[attrs[i]]=true; 689 | } 690 | else 691 | { 692 | _r(tmp,attrs[i],base+attrs[i+1],env,scope,global); 693 | if(base===0)base=attrs[i+1]; 694 | } 695 | } 696 | for(var i=0;i=0;x--){if(e[p].i[x]&&d[e[p].i[x]][c])return d[e[p].i[x]][c]};for(var x=e[p].ti.length-1;x>=0;x--){var q=_grp(e[p].ti[x],e,p);if(q&&d[q][c])return d[q][c]}var ii=_gapi(e,p);for(var x=0;x=0;k--)if(e[p].j[k]){for(var q=e[e[p].j[k]].ti.length-1;q>=0;q--){var pp=_grp(e[e[p].j[k]].ti[q],e,p);if(pp&&d[pp][c]){return d[pp][c]}}}} 949 | function _gapi(e,p){if(!p)return [];if($gaic[p]){return $gaic[p]};var ret=[],q=[],h=0,t=0,put={},visited={};q.push(p);visited[p]=true;t++;while(h=0.02+1e-6&&window.__mergeData__) 1196 | { 1197 | env=window.__mergeData__(env,dd); 1198 | } 1199 | try{ 1200 | main(env,{},root,global); 1201 | if(typeof(window.__webview_engine_version__)=='undefined'|| window.__webview_engine_version__+1e-6<0.01+1e-6){return _ev(root);} 1202 | }catch(err){ 1203 | console.log(cs, env); 1204 | console.log(err) 1205 | throw err 1206 | } 1207 | return root; 1208 | } 1209 | } 1210 | } 1211 | 1212 | 1213 | var BASE_DEVICE_WIDTH = 750; 1214 | var isIOS=navigator.userAgent.match("iPhone"); 1215 | var deviceWidth = window.screen.width || 375; 1216 | var deviceDPR = window.devicePixelRatio || 2; 1217 | function checkDeviceWidth() { 1218 | var newDeviceWidth = window.screen.width || 375 1219 | var newDeviceDPR = window.devicePixelRatio || 2 1220 | const newDeviceHeight = window.screen.height || 375 1221 | if (window.screen.orientation && /^landscape/.test(window.screen.orientation.type || '')) newDeviceWidth = newDeviceHeight 1222 | if (newDeviceWidth !== deviceWidth || newDeviceDPR !== deviceDPR) { 1223 | deviceWidth = newDeviceWidth 1224 | deviceDPR = newDeviceDPR 1225 | } 1226 | } 1227 | checkDeviceWidth() 1228 | var eps = 1e-4; 1229 | function transformRPX(number) { 1230 | if ( number === 0 ) return 0; 1231 | number = number / BASE_DEVICE_WIDTH * deviceWidth; 1232 | number = Math.floor(number + eps); 1233 | if (number === 0) { 1234 | if (deviceDPR === 1 || !isIOS) { 1235 | return 1; 1236 | } else { 1237 | return 0.5; 1238 | } 1239 | } 1240 | return number; 1241 | } 1242 | var setCssToHead = function(file, _xcInvalid) { 1243 | var Ca = {}; 1244 | var _C= [[[2,1],],["body { min-height: 100%; }\n",],["@font-face { font-family: uniicons; font-weight: normal; font-style: normal; src: url(\x27https://img-cdn-qiniu.dcloud.net.cn/fonts/uni.ttf\x27) format(\x27truetype\x27); }\n.",[1],"uni-icon { font-family: uniicons; font-size: ",[0,48],"; font-weight: normal; font-style: normal; line-height: 1; display: inline-block; text-decoration: none; -webkit-font-smoothing: antialiased; }\n.",[1],"uni-icon.",[1],"uni-active { color: #007aff; }\n.",[1],"uni-icon-contact:before { content: \x27\\E100\x27; }\n.",[1],"uni-icon-person:before { content: \x27\\E101\x27; }\n.",[1],"uni-icon-personadd:before { content: \x27\\E102\x27; }\n.",[1],"uni-icon-contact-filled:before { content: \x27\\E130\x27; }\n.",[1],"uni-icon-person-filled:before { content: \x27\\E131\x27; }\n.",[1],"uni-icon-personadd-filled:before { content: \x27\\E132\x27; }\n.",[1],"uni-icon-phone:before { content: \x27\\E200\x27; }\n.",[1],"uni-icon-email:before { content: \x27\\E201\x27; }\n.",[1],"uni-icon-chatbubble:before { content: \x27\\E202\x27; }\n.",[1],"uni-icon-chatboxes:before { content: \x27\\E203\x27; }\n.",[1],"uni-icon-phone-filled:before { content: \x27\\E230\x27; }\n.",[1],"uni-icon-email-filled:before { content: \x27\\E231\x27; }\n.",[1],"uni-icon-chatbubble-filled:before { content: \x27\\E232\x27; }\n.",[1],"uni-icon-chatboxes-filled:before { content: \x27\\E233\x27; }\n.",[1],"uni-icon-weibo:before { content: \x27\\E260\x27; }\n.",[1],"uni-icon-weixin:before { content: \x27\\E261\x27; }\n.",[1],"uni-icon-pengyouquan:before { content: \x27\\E262\x27; }\n.",[1],"uni-icon-chat:before { content: \x27\\E263\x27; }\n.",[1],"uni-icon-qq:before { content: \x27\\E264\x27; }\n.",[1],"uni-icon-videocam:before { content: \x27\\E300\x27; }\n.",[1],"uni-icon-camera:before { content: \x27\\E301\x27; }\n.",[1],"uni-icon-mic:before { content: \x27\\E302\x27; }\n.",[1],"uni-icon-location:before { content: \x27\\E303\x27; }\n.",[1],"uni-icon-mic-filled:before, .",[1],"uni-icon-speech:before { content: \x27\\E332\x27; }\n.",[1],"uni-icon-location-filled:before { content: \x27\\E333\x27; }\n.",[1],"uni-icon-micoff:before { content: \x27\\E360\x27; }\n.",[1],"uni-icon-image:before { content: \x27\\E363\x27; }\n.",[1],"uni-icon-map:before { content: \x27\\E364\x27; }\n.",[1],"uni-icon-compose:before { content: \x27\\E400\x27; }\n.",[1],"uni-icon-trash:before { content: \x27\\E401\x27; }\n.",[1],"uni-icon-upload:before { content: \x27\\E402\x27; }\n.",[1],"uni-icon-download:before { content: \x27\\E403\x27; }\n.",[1],"uni-icon-close:before { content: \x27\\E404\x27; }\n.",[1],"uni-icon-redo:before { content: \x27\\E405\x27; }\n.",[1],"uni-icon-undo:before { content: \x27\\E406\x27; }\n.",[1],"uni-icon-refresh:before { content: \x27\\E407\x27; }\n.",[1],"uni-icon-star:before { content: \x27\\E408\x27; }\n.",[1],"uni-icon-plus:before { content: \x27\\E409\x27; }\n.",[1],"uni-icon-minus:before { content: \x27\\E410\x27; }\n.",[1],"uni-icon-circle:before, .",[1],"uni-icon-checkbox:before { content: \x27\\E411\x27; }\n.",[1],"uni-icon-close-filled:before, .",[1],"uni-icon-clear:before { content: \x27\\E434\x27; }\n.",[1],"uni-icon-refresh-filled:before { content: \x27\\E437\x27; }\n.",[1],"uni-icon-star-filled:before { content: \x27\\E438\x27; }\n.",[1],"uni-icon-plus-filled:before { content: \x27\\E439\x27; }\n.",[1],"uni-icon-minus-filled:before { content: \x27\\E440\x27; }\n.",[1],"uni-icon-circle-filled:before { content: \x27\\E441\x27; }\n.",[1],"uni-icon-checkbox-filled:before { content: \x27\\E442\x27; }\n.",[1],"uni-icon-closeempty:before { content: \x27\\E460\x27; }\n.",[1],"uni-icon-refreshempty:before { content: \x27\\E461\x27; }\n.",[1],"uni-icon-reload:before { content: \x27\\E462\x27; }\n.",[1],"uni-icon-starhalf:before { content: \x27\\E463\x27; }\n.",[1],"uni-icon-spinner:before { content: \x27\\E464\x27; }\n.",[1],"uni-icon-spinner-cycle:before { content: \x27\\E465\x27; }\n.",[1],"uni-icon-search:before { content: \x27\\E466\x27; }\n.",[1],"uni-icon-plusempty:before { content: \x27\\E468\x27; }\n.",[1],"uni-icon-forward:before { content: \x27\\E470\x27; }\n.",[1],"uni-icon-back:before, .",[1],"uni-icon-left-nav:before { content: \x27\\E471\x27; }\n.",[1],"uni-icon-checkmarkempty:before { content: \x27\\E472\x27; }\n.",[1],"uni-icon-home:before { content: \x27\\E500\x27; }\n.",[1],"uni-icon-navigate:before { content: \x27\\E501\x27; }\n.",[1],"uni-icon-gear:before { content: \x27\\E502\x27; }\n.",[1],"uni-icon-paperplane:before { content: \x27\\E503\x27; }\n.",[1],"uni-icon-info:before { content: \x27\\E504\x27; }\n.",[1],"uni-icon-help:before { content: \x27\\E505\x27; }\n.",[1],"uni-icon-locked:before { content: \x27\\E506\x27; }\n.",[1],"uni-icon-more:before { content: \x27\\E507\x27; }\n.",[1],"uni-icon-flag:before { content: \x27\\E508\x27; }\n.",[1],"uni-icon-home-filled:before { content: \x27\\E530\x27; }\n.",[1],"uni-icon-gear-filled:before { content: \x27\\E532\x27; }\n.",[1],"uni-icon-info-filled:before { content: \x27\\E534\x27; }\n.",[1],"uni-icon-help-filled:before { content: \x27\\E535\x27; }\n.",[1],"uni-icon-more-filled:before { content: \x27\\E537\x27; }\n.",[1],"uni-icon-settings:before { content: \x27\\E560\x27; }\n.",[1],"uni-icon-list:before { content: \x27\\E562\x27; }\n.",[1],"uni-icon-bars:before { content: \x27\\E563\x27; }\n.",[1],"uni-icon-loop:before { content: \x27\\E565\x27; }\n.",[1],"uni-icon-paperclip:before { content: \x27\\E567\x27; }\n.",[1],"uni-icon-eye:before { content: \x27\\E568\x27; }\n.",[1],"uni-icon-arrowup:before { content: \x27\\E580\x27; }\n.",[1],"uni-icon-arrowdown:before { content: \x27\\E581\x27; }\n.",[1],"uni-icon-arrowleft:before { content: \x27\\E582\x27; }\n.",[1],"uni-icon-arrowright:before { content: \x27\\E583\x27; }\n.",[1],"uni-icon-arrowthinup:before { content: \x27\\E584\x27; }\n.",[1],"uni-icon-arrowthindown:before { content: \x27\\E585\x27; }\n.",[1],"uni-icon-arrowthinleft:before { content: \x27\\E586\x27; }\n.",[1],"uni-icon-arrowthinright:before { content: \x27\\E587\x27; }\n.",[1],"uni-icon-pulldown:before { content: \x27\\E588\x27; }\n.",[1],"swiper-item { display: flex; width: 100%; height: 100%; text-align: center; background-color: #00BFFF; justify-content: center; align-items: center; }\n.",[1],"uni-icon { margin-top: 0; color: #929292; }\n.",[1],"tab { position: fixed; z-index: 999; height: ",[0,100],"; width: 100%; bottom: 0; background-color: #F7F7F7; display: flex; border-top: #CCCCCC ",[0,2]," solid; }\n.",[1],"tab .",[1],"item-add { width: 20%; color: #929292; display: flex; align-items: center; flex-direction: column; justify-content: center; position: relative; text-align: center; }\n.",[1],"item-add .",[1],"uni-icon { position: absolute; color: #929292; border-radius: 50%; font-size: ",[0,100],"; left: ",[0,25],"; top: ",[0,-50],"; box-shadow: 0 ",[0,3]," ",[0,5]," ",[0,-1]," rgba(0, 0, 0, 1), 0 ",[0,5]," ",[0,8]," 0 rgba(0, 0, 0, .14), 0 ",[0,1]," ",[0,14]," 0 rgba(0, 0, 0, .12); }\n.",[1],"item-add .",[1],"text { font-size: ",[0,24],"; padding-top: ",[0,36],"; }\n.",[1],"tab .",[1],"item { width: 20%; color: #929292; font-size: ",[0,24],"; display: flex; align-items: center; flex-direction: column; justify-content: center; }\n.",[1],"active { color: #20D785 !important; }\n.",[1],"active .",[1],"uni-icon { color: #20D785; }\n",],]; 1245 | function makeup(file, suffix) { 1246 | var _n = typeof(file) === "number"; 1247 | if ( _n && Ca.hasOwnProperty(file)) return ""; 1248 | if ( _n ) Ca[file] = 1; 1249 | var ex = _n ? _C[file] : file; 1250 | var res=""; 1251 | for (var i = ex.length - 1; i >= 0; i--) { 1252 | var content = ex[i]; 1253 | if (typeof(content) === "object") 1254 | { 1255 | var op = content[0]; 1256 | if ( op == 0 ) 1257 | res = transformRPX(content[1]) + "px" + res; 1258 | else if ( op == 1) 1259 | res = suffix + res; 1260 | else if ( op == 2 ) 1261 | res = makeup(content[1], suffix) + res; 1262 | } 1263 | else 1264 | res = content + res 1265 | } 1266 | return res; 1267 | } 1268 | return function(suffix, opt){ 1269 | if ( typeof suffix === "undefined" ) suffix = ""; 1270 | if ( opt && opt.allowIllegalSelector != undefined && _xcInvalid != undefined ) 1271 | { 1272 | if ( opt.allowIllegalSelector ) 1273 | console.warn( "For developer:" + _xcInvalid ); 1274 | else 1275 | { 1276 | console.error( _xcInvalid + "This wxss file is ignored." ); 1277 | return; 1278 | } 1279 | } 1280 | Ca={}; 1281 | css = transformVar(makeup(file, suffix)); 1282 | var style = document.createElement('style'); 1283 | var head = document.head || document.getElementsByTagName('head')[0]; 1284 | style.type = 'text/css'; 1285 | if (style.styleSheet) { 1286 | style.styleSheet.cssText = css; 1287 | } else { 1288 | style.appendChild(document.createTextNode(css)); 1289 | } 1290 | head.appendChild(style); 1291 | } 1292 | } 1293 | setCssToHead([])();setCssToHead([[2,0]])(); 1294 | 1295 | ;var __pageFrameEndTime__ = Date.now(); 1296 | -------------------------------------------------------------------------------- /bottom-navigation/unpackage/dist/dev/app-plus/bottom-navigation/manifest.json: -------------------------------------------------------------------------------- 1 | {"@platforms":["android","iPhone","iPad"],"id":"__UNI__EAAC2DD","name":"bottom-navigation","version":{"name":"1.0.0","code":"100"},"description":"","launch_path":"__uniappservice.html","developer":{"name":"","email":"","url":""},"permissions":{},"plus":{"useragent":{"value":"uni-app appservice","concatenate":true},"splashscreen":{"autoclose":false,"waiting":true},"popGesture":"close","statusbar":{"immersed":"supportedDevice","style":"dark","background":"#F8F8F8"},"distribute":{"google":{"permissions":["","","","","","","","","","","","","","","","","","","","","",""]},"apple":{},"plugins":{}},"allowsInlineMediaPlayback":true}} -------------------------------------------------------------------------------- /bottom-navigation/unpackage/dist/dev/app-plus/bottom-navigation/pages/tabs/tabs.js: -------------------------------------------------------------------------------- 1 | 2 | !(function(){ 3 | var uniAppViewReadyCallback = function(){ 4 | setCssToHead([[2,2],])(); 5 | document.dispatchEvent(new CustomEvent("generateFuncReady", { detail: { generateFunc: $gwx('./pages/tabs/tabs.wxml') } })); 6 | } 7 | if(window.__uniAppViewReady__){ 8 | uniAppViewReadyCallback() 9 | }else{ 10 | document.addEventListener('uniAppViewReady',uniAppViewReadyCallback) 11 | } 12 | })(); 13 | --------------------------------------------------------------------------------