新增音萌

This commit is contained in:
Dragon
2023-03-14 10:46:52 +08:00
commit 8eec6fc733
3681 changed files with 283690 additions and 0 deletions

187
.gitignore vendored Normal file
View File

@@ -0,0 +1,187 @@
mengsheng-module/mengsheng-business/mengsheng-business-service/target/
mengsheng-module/mengsheng-business/mengsheng-business-api/target/
mengsheng-common/target/
.idea/
mengsheng-oauth2/target/
mengsheng-scheduler/target/
*.iml
mengsheng-module/mengsheng-user/mengsheng-user-service/target/
mengsheng-module/mengsheng-sms/mengsheng-sms-service/target/
mengsheng-module/mengsheng-sms/mengsheng-sms-api/target/
mengsheng-module/mengsheng-user/mengsheng-user-api/target/
mengsheng-module/mengsheng-payment/mengsheng-payment-service/target/
# Xcode
#
# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore
## Build generated
node_modules
dist/
DerivedData/
## Various settings
*.pbxuser
!default.pbxuser
*.mode1v3
!default.mode1v3
*.mode2v3
!default.mode2v3
*.perspectivev3
!default.perspectivev3
xcuserdata/
## Other
*.moved-aside
*.xccheckout
*.xcscmblueprint
## Obj-C/Swift specific
*.hmap
*.ipa
*.dSYM.zip
*.dSYM
# CocoaPods
#
# We recommend against adding the Pods directory to your .gitignore. However
# you should judge for yourself, the pros and cons are mentioned at:
# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control
#
Pods/
# Carthage
#
# Add this line if you want to avoid checking in source code from Carthage dependencies.
# Carthage/Checkouts
Carthage/Build
# fastlane
#
# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the
# screenshots whenever they are needed.
# For more information about the recommended setup visit:
# https://docs.fastlane.tools/best-practices/source-control/#source-control
fastlane/report.xml
fastlane/Preview.html
fastlane/screenshots
fastlane/test_output
# Code Injection
#
# After new code Injection tools there's a generated folder /iOSInjectionProject
# https://github.com/johnno1962/injectionforxcode
iOSInjectionProject/
# Compiled class file
*.class
# Log file
*.log
# BlueJ files
*.ctxt
# Mobile Tools for Java (J2ME)
.mtj.tmp/
# Package Files #
*.war
*.ear
*.zip
*.tar.gz
*.rar
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
# Built application files
*.apk
*.ap_
# Files for the ART/Dalvik VM
*.dex
# Java class files
# Generated files
bin/
gen/
out/
# Gradle files
.gradle/
# Local configuration file (sdk path, etc)
local.properties
# Proguard folder generated by Eclipse
proguard/
# Log Files
# Android Studio Navigation editor temp files
.navigation/
# Android Studio captures folder
captures/
# Intellij
*.iml
*.DS_Store
.classpath
*/target/
log.dir_IS_UNDEFINED/
log.dir_IS_UNDEFINED/*
**/.idea/*
run.sh
out/*
/out
*.ipr
*.iws
.metadata/
.recommenders/
*.springBeans
*.mvn/*
/.mvn
mvnw
mvnw.cmd
*.map
.idea/
# Keystore files
# External native build folder generated in Android Studio 2.2 and later
.externalNativeBuild
# Google Services (e.g. APIs or Firebase)
google-services.json
# Freeline
freeline.py
freeline/
freeline_project_description.json
iOS/Podfile.lock
iOS/XChat.xcworkspace/contents.xcworkspacedata
xchat-web/src/main/resources/application-context-web-local.xml
#xchat-service/src/main/resources/generatorConfig.xml
#/xchat-service/src/main/resources/generatorConfig.xml
#use eclipse will create this fileignore it
.project
.settings/
Servers/
mengsheng-module/mengsheng-base/mengsheng-base-api/target/
mengsheng-module/mengsheng-base/mengsheng-base-service/target/
mengsheng-admin/target/
.vscode/*

View File

@@ -0,0 +1,318 @@
body,
html {
width: 100%;
height: 100%;
font-family: "Heiti SC", "Microsoft Sans Serif";
}
.m-bg {
display: none;
}
.m-bg img {
display: block;
}
.m-button {
display: none;
position: absolute;
width: 70%;
left: 50%;
margin-left: -35%;
}
.m-button.m-button1 {
top: 17.5%;
}
.m-button.m-button2 {
bottom: 7.5%;
}
.container {
position: relative;
}
.text-wrapper {
position: absolute;
bottom: 2%;
width: 40%;
left: 50%;
margin-left: -20%;
padding-left: 140px;
box-sizing: border-box;
}
.text-wrapper .qrcode {
position: absolute;
width: 120px;
height: 120px;
background: #000;
left: 0;
top: 0;
}
.text-wrapper .text .txt1 {
line-height: 18px;
margin-bottom: 20px;
font-size: 14px;
}
.text-wrapper .text .txt2 {
line-height: 16px;
}
.text-wrapper .text .txt2 span {
color: #948aff;
}
.eori {
width: 100%;
background: #000;
position: absolute;
left: 0;
padding: 0.13333rem 0;
}
.eori .weixin-name {
padding-top: 0.26667rem;
}
.eori .recordfoot {
width: 100%;
color: #000;
text-align: left;
display: flex;
justify-content: center;
align-items: center;
font-size: 13px;
margin-bottom: 0.08rem;
}
.eori .recordfoot .record {
display: inline-block;
padding-right: 0.05333rem;
width: 0.18667rem;
height: 0.21333rem;
background: url(../images/icon_police.png) no-repeat;
}
.eori .recordfoot a {
color: #fff;
}
.eori .gongsi {
display: flex;
justify-content: center;
font-size: 13px;
color: #fff;
}
.eori .gongsi p:nth-child(2) {
margin: 0 14px;
}
.eori .tit {
height: 60px;
line-height: 60px;
text-align: center;
font-size: 20px;
}
.footer {
line-height: 70px;
text-align: center;
font-size: 14px;
color: #fff;
background: rgba(0, 0, 0, 0.6);
}
.footer span {
margin: 0 6px;
}
.footer a {
color: #fff;
}
.culture-icon a {
width: 100%;
height: 100%;
}
.culture-icon img {
width: 50px;
height: 50px;
vertical-align: middle;
}
.button-wrapper {
cursor: pointer;
position: absolute;
left: 68.55%;
top: 68%;
width: 19.4%;
height: 6.6%;
background: rgba(253, 247, 247, 0);
}
.button-wrapper a {
display: inline-block;
width: 100%;
height: 100%;
}
.button2-wrapper {
cursor: pointer;
position: absolute;
left: 45.55%;
top: 67%;
width: 19.4%;
height: 7.6%;
}
.button2-wrapper a {
display: inline-block;
width: 100%;
height: 100%;
}
.button-wrapper, .button2-wrapper {
display: none;
}
@media screen and (max-width: 1300px) {
.text-wrapper {
bottom: 1%;
}
.text-wrapper .text {
font-size: 12px;
}
.text-wrapper .text .txt1 {
font-size: 12px;
}
}
@media screen and (max-width: 375px) {
.text-wrapper {
bottom: 0px;
}
.button-wrapper, .button-wrapper {
display: block;
}
}
@media screen and (max-width: 729px) {
body {
background-color: #0C0122;
}
.pc-bg {
display: none;
}
.m-bg {
display: block;
}
.button-wrapper {
display: block;
position: absolute;
left: 1.28rem;
top: 17.52rem;
width: 7.46667rem;
height: 1.22667rem;
}
.button-wrapper a {
display: inline-block;
width: 100%;
height: 100%;
}
.button2-wrapper {
display: block;
position: absolute;
left: 3.09333rem;
bottom: 1.70667rem;
width: 4rem;
height: 0.8rem;
background: rgba(255, 255, 255, 0);
}
.button2-wrapper a {
display: inline-block;
width: 100%;
height: 100%;
}
.m-button {
display: block;
}
.text-wrapper {
padding-left: 0;
width: 90%;
margin-left: -45%;
padding-top: 108px;
}
.text-wrapper .text .txt1 {
margin-bottom: 10px;
}
.text-wrapper .text1,
.text-wrapper p {
text-align: center;
}
.eori {
height: 1.81333rem;
width: 100%;
background: #30312C;
color: white;
padding: 0.26667rem 0;
}
.eori .recordfoot {
color: #fff;
display: flex;
justify-content: center;
align-items: center;
}
.eori .recordfoot .record {
display: inline-block;
padding-right: 0.05333rem;
height: 0.37333rem;
width: 0.42667rem;
background: url(../images/icon_police.png) no-repeat;
}
.eori .gongsi {
display: block;
text-align: center;
}
.eori .gongsi p {
line-height: 1.3;
}
.eori .gongsi p:nth-child(2) {
margin: 0;
}
.eori .tit {
height: 1.6rem;
line-height: 1.6rem;
text-align: center;
font-size: 20px;
}
}
.toast {
background: rgba(0, 0, 0, 0.9);
border-radius: 10px;
width: 100px;
font-size: 16px;
position: fixed;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
color: #fff;
height: 40px;
line-height: 40px;
text-align: center;
display: none;
}
.tips {
display: none;
position: fixed;
top: 0;
right: 0.26667rem;
width: 6.13333rem;
}

View File

@@ -0,0 +1,414 @@
@function px2rem($px, $rem:75) {
@return $px / $rem+rem;
}
body,
html {
width: 100%;
height: 100%;
font-family: "Heiti SC", "Microsoft Sans Serif";
//overflow: hidden;
}
.m-bg {
display: none;
img {
display: block;
}
}
.m-button {
display: none;
position: absolute;
width: 70%;
left: 50%;
margin-left: -35%;
&.m-button1 {
top: 17.5%;
}
&.m-button2 {
bottom: 7.5%;
}
}
.container {
position: relative;
}
.text-wrapper {
position: absolute;
bottom: 2%;
width: 40%;
left: 50%;
margin-left: -20%;
padding-left: 140px;
box-sizing: border-box;
.qrcode {
position: absolute;
width: 120px;
height: 120px;
background: #000;
left: 0;
top: 0;
}
.text {
.txt1 {
line-height: 18px;
margin-bottom: 20px;
font-size: 14px;
}
.txt2 {
line-height: 16px;
span {
color: #948aff;
}
}
}
}
.eori {
// height: 8.7%;
width: 100%;
background: #000;
// color: #D1D1D1;
position: absolute;
left: 0;
padding: px2rem(10, ) 0;
// p {
// height: 40px;
// width: 50%;
// float: left;
// text-align: center;
// line-height: 40px;
// font-size: 10px;
// text-align: right;
// padding-right: 20px;
// box-sizing: border-box;
// a {
// color: #666;
// }
// }
.weixin-name {
padding-top: px2rem(20);
}
.recordfoot {
width: 100%;
color: #000;
text-align: left;
display: flex;
justify-content: center;
align-items: center;
font-size: 13px;
margin-bottom: px2rem(6, );
.record {
display: inline-block;
padding-right: px2rem(4);
width: px2rem(14, );
height: px2rem(16, );
background: url(../images/icon_police.png) no-repeat;
// background: #948aff;
}
a{
color: #fff;
}
}
.gongsi{
display: flex;
justify-content: center;
font-size: 13px;
color: #fff;
p{
&:nth-child(2){
margin: 0 14px;
}
}
}
// div {
// // height: 30px;
// width: 100%;
// text-align: center;
// // line-height: 30px;
// font-size: 16px;
// }
.tit {
height: 60px;
line-height: 60px;
text-align: center;
font-size: 20px;
}
}
.footer {
line-height: 70px;
text-align: center;
font-size: 14px;
color: #fff;
background: rgba(0, 0, 0, 0.6);
span {
margin: 0 6px;
}
a {
color: #fff;
}
}
.culture-icon {
a {
width: 100%;
height: 100%;
}
img {
width: 50px;
height: 50px;
vertical-align: middle;
}
}
.button-wrapper {
cursor: pointer;
position: absolute;
left: 68.55%;
// top: 62.27%;
top: 68%;
width: 19.4%;
height: 6.6%;
background: rgba(253, 247, 247, 0);
a {
display: inline-block;
width: 100%;
height: 100%;
}
}
.button2-wrapper {
cursor: pointer;
position: absolute;
left: 45.55%;
// top: 61.09%;
top: 67%;
width: 19.4%;
height: 7.6%;
// background: rgba(253, 247, 247, 0);
a {
display: inline-block;
width: 100%;
height: 100%;
}
}
.button-wrapper, .button2-wrapper{
display: none;
}
@media screen and (max-width:1300px) {
.text-wrapper {
bottom: 1%;
.text {
.txt1 {
font-size: 12px;
}
font-size:12px;
}
}
// .button-wrapper {
// cursor: pointer;
// left: 68.55%;
// // top: 62.27%;
// top: 68%;
// }
// .button2-wrapper {
// left: 57.55%;
// // top: 61.09%;
// top: 67%;
// }
// .button2-wrapper {
// cursor: pointer;
// left: 45.55%;
// width: 19.4%;
// // background: #000;
// // background: rgba(253, 247, 247, 0);
// a {
// display: inline-block;
// width: 100%;
// height: 100%;
// }
// }
}
@media screen and (max-width:375px) {
.text-wrapper {
bottom: 0px;
}
.button-wrapper, .button-wrapper{
display: block;
}
}
@media screen and (max-width:729px) {
body{
background-color: #0C0122;
}
.pc-bg {
display: none;
}
.m-bg {
display: block;
}
.button-wrapper {
display: block;
position: absolute;
left: px2rem(96);
top: px2rem(1314);
width: px2rem(560);
height: px2rem(92);
a {
display: inline-block;
width: 100%;
height: 100%;
}
}
.button2-wrapper {
display: block;
position: absolute;
left: px2rem(232);
// top: px2rem(1208);
bottom: px2rem(128);
width: px2rem(300);
height: px2rem(60);
background: rgba(255, 255, 255, 0);
a {
display: inline-block;
width: 100%;
height: 100%;
}
}
.m-button {
display: block;
}
.text-wrapper {
padding-left: 0;
width: 90%;
margin-left: -45%;
padding-top: 108px;
.text {
.txt1 {
margin-bottom: 10px;
}
}
.text1,
p {
text-align: center;
}
}
.eori {
height: px2rem(136);
width: 100%;
background: #30312C;
color: rgb(255, 255, 255);
padding: px2rem(20, ) 0;
.recordfoot {
color: #fff;
display: flex;
justify-content: center;
align-items: center;
.record {
display: inline-block;
padding-right: px2rem(4);
height: px2rem(28, );
width: px2rem(32, );
background: url(../images/icon_police.png) no-repeat;
}
}
.gongsi{
display: block;
text-align: center;
p{
line-height: 1.3;
&:nth-child(2){
margin: 0;
}
}
}
// div {
// // height: 30px;
// width: 100%;
// text-align: center;
// // line-height: 30px;
// font-size: 14px;
// }
.tit {
height: px2rem(120);
line-height: px2rem(120);
text-align: center;
font-size: 20px;
}
}
}
.toast {
background: rgba(0, 0, 0, 0.9);
border-radius: 10px;
width: 100px;
font-size: 16px;
position: fixed;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
color: #fff;
height: 40px;
line-height: 40px;
text-align: center;
display: none;
}
.tips {
display: none;
position: fixed;
top: 0;
right: px2rem(20);
width: px2rem(460);
}

View File

@@ -0,0 +1,144 @@
/**
* Eric Meyer's Reset CSS v2.0 (http://meyerweb.com/eric/tools/css/reset/)
* http://cssreset.com
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header,
menu, nav, output, ruby, section, summary,
time, mark, audio, video, input {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font-weight: normal;
vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, menu, nav, section {
display: block;
}
body {
line-height: 1;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
/* custom */
a {
color: #7e8c8d;
text-decoration: none;
-webkit-backface-visibility: hidden;
}
li {
list-style: none;
}
::-webkit-scrollbar {
width: 5px;
height: 5px;
}
::-webkit-scrollbar-track-piece {
background-color: rgba(0, 0, 0, 0.2);
-webkit-border-radius: 6px;
}
::-webkit-scrollbar-thumb:vertical {
height: 5px;
background-color: rgba(125, 125, 125, 0.7);
-webkit-border-radius: 6px;
}
::-webkit-scrollbar-thumb:horizontal {
width: 5px;
background-color: rgba(125, 125, 125, 0.7);
-webkit-border-radius: 6px;
}
html, body {
width: 100%;
}
body {
-webkit-text-size-adjust: none;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
img{
width: 100%;
vertical-align: top;
}
.mask,.share-mask {
position: fixed;
width: 100%;
left: 0;
bottom: 0;
display: flex;
height: 60px;
align-items: center;
background: rgba(0, 0, 0, 0.5);
justify-content: space-between;
padding: 0 8px;
box-sizing: border-box;
color:#fff;
display: none; }
.mask .logo {
width: 40px;
}
.mask .slogan {
color: #fff;
margin: 0 8px;
}
#download {
border: 1px solid #fff;
color: #fff;
width: 80px;
text-align: center;
border-radius: 15px;
line-height: 30px; }
#download a{
color: #fff; }
.share-mask{
padding: 0 16px;
}
.share-mask .shareBtn{
border-radius: 6px;
background: linear-gradient(to right,#fe95c0,#ff83b5);
height: 30px;
line-height: 30px;
width: 80px;
text-align: center;
}
.singleTemplate{
display: none;
}

15
view/support/support/css/swiper.min.css vendored Normal file

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 200 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 537 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 285 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 421 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

View File

@@ -0,0 +1,70 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta name="keywords" content="" />
<meta name="description" content="" />
<meta http-equiv="Cache-Control" content="no-siteapp" />
<meta name="renderer" content="webkit">
<meta name="format-detection" content="telphone=no, email=no" />
<meta name="HandheldFriendly" content="true">
<meta name="MobileOptimized" content="375">
<meta name="screen-orientation" content="portrait">
<meta name="x5-orientation" content="portrait">
<meta name="full-screen" content="yes">
<meta name="x5-fullscreen" content="true">
<meta name="browsermode" content="application">
<meta name="x5-page-mode" content="app">
<meta name="msapplication-tap-highlight" content="no">
<meta name="apple-mobile-web-app-capable" content="no" />
<meta name="format-detection" content="telephone=no">
<title>音游</title>
<!-- <link rel="stylesheet" href="./home/css/reset.css"> -->
<link rel="stylesheet" href="./css/reset.css">
<link rel="stylesheet" href="./css/index.css">
<!-- <link rel="stylesheet" href="./home/css/index.css"> -->
<script src="./js/flexible.js"></script>
</head>
<body>
<div class="container">
<div class="pc-bg"><img src="./images/homePc.png" alt=""></div>
<div class="m-bg"><img src="./images/homeM.png" alt=""></div>
<div class="button-wrapper download">
</div>
<div class="button2-wrapper download">
</div>
<div class="eori">
<div class="recordfoot">
<i class="record"></i>
<a href="https://beian.miit.gov.cn/#/Integrated/index">粤ICP备18040812号</a>
</div>
<div class="gongsi">
<p>公司主体:广州芒果互娱网络科技有限公司</p>
<p>联系地址广州市天河区珠吉路59号之二四楼A4569</p>
<p>联系方式020-85698266</p>
</div>
</div>
</div>
<div class="toast">敬请期待</div>
<div class="tips">
<img src="./images/tips.png" alt="">
</div>
<script src="./js/jquery.min.js"></script>
<script src="./js/common.js"></script>
<script src="./js/jquery.qrcode.js"></script>
<script src="http://static.lkme.cc/linkedme.min.js"></script>
<script src="./js/utf.js"></script>
<script src="./js/index.js?v=2.2"></script>
<script></script>
</body>
</html>

View File

@@ -0,0 +1,307 @@
function render (templateId, templateData, target) {
var html = template(templateId, templateData);
target.innerHTML += html;
}
function dateFormat (date, fmt) {
date = new Date(date);
var o = {
'M+': date.getMonth() + 1,
'd+': date.getDate(),
'h+': date.getHours(),
'm+': date.getMinutes(),
's+': date.getSeconds()
};
// 补全0
function padLeftZero(str) {
return('00' + str).substr(str.length);
}
// 年份
if(/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
}
// 月日时分秒
for(var k in o) {
if(new RegExp('(' + k + ')').test(fmt)) {
var str = o[k] + '';
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? str : padLeftZero(str));
}
}
date = o = padLeftZero = null;
return fmt;
}
function convert (_url) {
var patt=/\d+/;
var num=_url.match(patt);
var rs={};
rs.uid=num[0];
return rs;
}
// 传递分享信息给客户端,showUrl为分享的页面链接,为空时表示不分享
// function shareInfo () {
// var _url = 'http://www.erbanyy.com/modules/bonus/fight.html';
// var res = EnvCheck();
// if (res == 'test'){
// _url = 'http://beta.erbanyy.com/modules/bonus/fight.html';
// }
// var info = {
// title: '耳伴与你一起红',
// imgUrl: 'http://www.erbanyy.com/home/images/logo.png',
// desc: '登录即送20红包每天还有分享红包邀请红包分成红包四重红包大礼等你来拿',
// showUrl: _url
// };
// return JSON.stringify(info);
// }
// 根据域名适配环境
function EnvCheck() {
if(window.location.href){
var _url = window.location.href;
var res = _url.match(/beta/);
if(res){
return 'test';
}else{
return 'live';
}
}
}
// 根据域名判断是本地打开还是服务器打开
function locateJudge() {
if(window.location.href){
var _url = window.location.href;
var res = _url.match(/test/);
if(res){
return '/api';
}else{
return '';
}
}
}
// 获取地址栏参数
function getQueryString(){
var _url = location.search;
var theRequest = new Object();
if(_url.indexOf('?') != -1){
var str = _url.substr(1);
strs = str.split('&');
for(var i in strs){
theRequest[strs[i].split('=')[0]] = decodeURI(strs[i].split('=')[1]);
}
}
return theRequest;
}
// 判断浏览器内核,手机类型
function checkVersion(){
var u = navigator.userAgent, app = navigator.appVersion;
return {
trident: u.indexOf('Trident') > -1, //IE内核
presto: u.indexOf('Presto') > -1, //opera内核
webKit: u.indexOf('AppleWebKit') > -1, //苹果、谷歌内核
gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1,//火狐内核
mobile: !!u.match(/AppleWebKit.*Mobile.*/), //是否为移动终端
ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端
android: u.indexOf('Android') > -1 || u.indexOf('Adr') > -1, //android终端
iPhone: u.indexOf('iPhone') > -1 , //是否为iPhone或者QQHD浏览器
iPad: u.indexOf('iPad') > -1, //是否iPad
webApp: u.indexOf('Safari') == -1, //是否web应该程序没有头部与底部
weixin: u.indexOf('MicroMessenger') > -1, //是否微信
qq: u.match(/\sQQ/i) == " qq", //是否QQ
app: u.match('mengshengApp') == 'mengshengApp' //是否在app内
};
}
// 图片预加载
function preloadImage(obj){
var loadLength = 0,newImages = [];
for(var i = 0;i < obj.imageArr.length;i++){
newImages[i] = new Image();
newImages[i].src = obj.imageArr[i];
newImages[i].onload = newImages[i].onerror = function(){
loadLength++;
typeof obj.preloadPreFunc === 'function' && obj.preloadPreFunc(loadLength);
if(loadLength == obj.imageArr.length){
typeof obj.doneFunc === 'function' && obj.doneFunc();
}
}
}
}
// 判断是否在App内
function isApp() {
var androidBol = false;
var osBol = false;
if(window.androidJsObj && typeof window.androidJsObj === 'object'){
androidBol = true;
}
if(window.webkit){
console.log(window.webkit);
osBol = true;
}
return (androidBol || osBol);
}
function msMask(channel,tags,params) {
//此函数用于一般的耳伴底层面罩
var browser = checkVersion();
var env = EnvCheck();
// params = params? params:0;
var bol = $.isEmptyObject(params);
var jsonStr = '';
if(!bol) {
jsonStr = JSON.stringify(params);
}
if(!browser.app){
$('#mask').css('display','flex');
var linkData = {
type: env,
channel: channel,
tags: tags,
// ios_custom_url: "https://itunes.apple.com/cn/app/id1252542069?mt=8",
params: jsonStr
// '{"uid":"' + params + '"}'
};
linkedme.init("414571f0698afaa1c194f345f0dcc328", {type: env}, null);
linkedme.link(linkData, function(err, response){
if(err){
// 生成深度链接失败返回错误对象err
console.log('err:',err);
} else {
console.log(response);
$('#download a').attr("href",response.url);
$('.download a').attr('href',response.url);
}
},false);
}else{
$('#share-mask').css('display','flex');
}
}
function wxConfig() {
var wxurl = encodeURIComponent(location.href.split('#')[0]);
var data ="url=" + wxurl;
console.log(data);
$.ajax({
type:'GET',
url: '/wx/config',
data: data,
asyc: true,
success: function (data) {
if(data.code = 200){
wx.config({
debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来若要查看传入的参数可以在pc端打开参数信息会通过log打出仅在pc端时才会打印。
appId: data.data.appId, // 必填,公众号的唯一标识
timestamp: data.data.timestamp, // 必填,生成签名的时间戳
nonceStr: data.data.nonceStr, // 必填,生成签名的随机串
signature: data.data.signature,// 必填签名见附录1
jsApiList: data.data.jsApiList // 必填需要使用的JS接口列表所有JS接口列表见附录2
});
wx.error(function(res){
console.log('config error,msg:'+res);
});
}
},
error:function(res){
console.log('config error,msg:'+res);
}
})
}
// function refreshWeb() {
// window.location.href = window.location.href;
// }
$('#share-mask .shareBtn').on('click',function () {
var browser = checkVersion();
if (browser.app) {
if (browser.android) {
window.androidJsObj.openSharePage();
} else if (browser.ios) {
window.webkit.messageHandlers.openSharePage.postMessage(null);
}
}
})
/**
* 渲染列表组件
* @param templateId 组件的id
* @param $target 渲染目标dom
* @param attrParam 属性名,格式 {'.class':['dataAttr',type]}
* @param data 渲染数据的数组
*/
function templateList(templateId,$target,attrParam,data){
var $template = $(templateId);
var str = $template.html();
for(var i = 0;i < data.length;i++){
var $list = $(str);
$target.append($list);
for(var j in attrParam){
if(attrParam[j][1] == 1){
$list.find(j + ' img').attr('src',data[i][attrParam[j][0]]);
}else if(attrParam[j][1] == 2){
$list.find(j).html(data[i][attrParam[j][0]]);
}
}
}
}
function initNav(obj) {
if($.isEmptyObject(obj)){
return;
}
var browser = checkVersion();
if(browser.app){
if(browser.ios){
window.webkit.messageHandlers.initNav.postMessage(obj);
}else if(browser.android){
var json = JSON.stringify(obj);
window.androidJsObj.initNav(json);
}
}
}
var tranUrl = 'http://www.if66.cn';
var tools = {
cookieUtils: {
set: function(key, val, time) {
var date = new Date();
var expiresDays = time;
date.setTime(date.getTime() + expiresDays * 24 * 3600 * 1000);
document.cookie = key + '=' + val + ';expires=' + date.toGMTString();
},
get: function(key) {
// 获取cookie参数
var getCookie = document.cookie.replace(/[ ]/g,'');
var arrCookie = getCookie.split(';');
var val;
for(var i = 0 ; i < arrCookie.length ; i++) {
var arr = arrCookie[i].split('=');
if(key === arr[0]) {
val = arr[1];
break;
}
}
return val;
},
delete: function(key) { //删除cookie方法
var date = new Date(); //获取当前时间
date.setTime(date.getTime() - 10000); //将date设置为过去的时间
document.cookie = key + '=v; expires =' + date.toGMTString(); //设置cookie
}
}
}

View File

@@ -0,0 +1,109 @@
;(function(win, lib) {
var doc = win.document;
var docEl = doc.documentElement;
var metaEl = doc.querySelector('meta[name="viewport"]');
var flexibleEl = doc.querySelector('meta[name="flexible"]');
var dpr = 0;
var scale = 0;
var tid;
var flexible = lib.flexible || (lib.flexible = {});
if (metaEl) {
console.warn('将根据已有的meta标签来设置缩放比例');
var match = metaEl.getAttribute('content').match(/initial\-scale=([\d\.]+)/);
if (match) {
scale = parseFloat(match[1]);
dpr = parseInt(1 / scale);
}
} else if (flexibleEl) {
var content = flexibleEl.getAttribute('content');
if (content) {
var initialDpr = content.match(/initial\-dpr=([\d\.]+)/);
var maximumDpr = content.match(/maximum\-dpr=([\d\.]+)/);
if (initialDpr) {
dpr = parseFloat(initialDpr[1]);
scale = parseFloat((1 / dpr).toFixed(2));
}
if (maximumDpr) {
dpr = parseFloat(maximumDpr[1]);
scale = parseFloat((1 / dpr).toFixed(2));
}
}
}
if (!dpr && !scale) {
var isAndroid = win.navigator.appVersion.match(/android/gi);
var isIPhone = win.navigator.appVersion.match(/iphone/gi);
var devicePixelRatio = win.devicePixelRatio;
if (isIPhone) {
// iOS下对于2和3的屏用2倍的方案其余的用1倍方案
if (devicePixelRatio >= 3 && (!dpr || dpr >= 3)) {
dpr = 3;
} else if (devicePixelRatio >= 2 && (!dpr || dpr >= 2)){
dpr = 2;
} else {
dpr = 1;
}
} else {
// 其他设备下仍旧使用1倍的方案
dpr = 1;
}
scale = 1 / dpr;
}
docEl.setAttribute('data-dpr', dpr);
if (!metaEl) {
metaEl = doc.createElement('meta');
metaEl.setAttribute('name', 'viewport');
metaEl.setAttribute('content', 'initial-scale=' + scale + ', maximum-scale=' + scale + ', minimum-scale=' + scale + ', user-scalable=no');
if (docEl.firstElementChild) {
docEl.firstElementChild.appendChild(metaEl);
} else {
var wrap = doc.createElement('div');
wrap.appendChild(metaEl);
doc.write(wrap.innerHTML);
}
}
function refreshRem(){
var width = docEl.getBoundingClientRect().width;
if (width / dpr > 730) {
width = 730 * dpr;
}
var rem = width / 10;
docEl.style.fontSize = rem + 'px';
flexible.rem = win.rem = rem;
}
win.addEventListener('resize', function() {
clearTimeout(tid);
tid = setTimeout(refreshRem, 300);
}, false);
win.addEventListener('pageshow', function(e) {
if (e.persisted) {
clearTimeout(tid);
tid = setTimeout(refreshRem, 300);
}
}, false);
if (doc.readyState === 'complete') {
doc.body.style.fontSize = 12 * dpr + 'px';
} else {
doc.addEventListener('DOMContentLoaded', function(e) {
doc.body.style.fontSize = 12 * dpr + 'px';
}, false);
}
refreshRem();
flexible.dpr = win.dpr = dpr;
flexible.refreshRem = refreshRem;
flexible.rem2px = function(d) {
var val = parseFloat(d) * this.rem;
if (typeof d === 'string' && d.match(/rem$/)) {
val += 'px';
}
return val;
}
flexible.px2rem = function(d) {
var val = parseFloat(d) / this.rem;
if (typeof d === 'string' && d.match(/px$/)) {
val += 'rem';
}
return val;
}
})(window, window['lib'] || (window['lib'] = {}));

View File

@@ -0,0 +1,4 @@
/**
* @preserve HTML5 Shiv 3.7.3 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed
*/
!function(a,b){function c(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function d(){var a=t.elements;return"string"==typeof a?a.split(" "):a}function e(a,b){var c=t.elements;"string"!=typeof c&&(c=c.join(" ")),"string"!=typeof a&&(a=a.join(" ")),t.elements=c+" "+a,j(b)}function f(a){var b=s[a[q]];return b||(b={},r++,a[q]=r,s[r]=b),b}function g(a,c,d){if(c||(c=b),l)return c.createElement(a);d||(d=f(c));var e;return e=d.cache[a]?d.cache[a].cloneNode():p.test(a)?(d.cache[a]=d.createElem(a)).cloneNode():d.createElem(a),!e.canHaveChildren||o.test(a)||e.tagUrn?e:d.frag.appendChild(e)}function h(a,c){if(a||(a=b),l)return a.createDocumentFragment();c=c||f(a);for(var e=c.frag.cloneNode(),g=0,h=d(),i=h.length;i>g;g++)e.createElement(h[g]);return e}function i(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return t.shivMethods?g(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+d().join().replace(/[\w\-:]+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(t,b.frag)}function j(a){a||(a=b);var d=f(a);return!t.shivCSS||k||d.hasCSS||(d.hasCSS=!!c(a,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),l||i(a,d),a}var k,l,m="3.7.3-pre",n=a.html5||{},o=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,p=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,q="_html5shiv",r=0,s={};!function(){try{var a=b.createElement("a");a.innerHTML="<xyz></xyz>",k="hidden"in a,l=1==a.childNodes.length||function(){b.createElement("a");var a=b.createDocumentFragment();return"undefined"==typeof a.cloneNode||"undefined"==typeof a.createDocumentFragment||"undefined"==typeof a.createElement}()}catch(c){k=!0,l=!0}}();var t={elements:n.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output picture progress section summary template time video",version:m,shivCSS:n.shivCSS!==!1,supportsUnknownElements:l,shivMethods:n.shivMethods!==!1,type:"default",shivDocument:j,createElement:g,createDocumentFragment:h,addElements:e};a.html5=t,j(b),"object"==typeof module&&module.exports&&(module.exports=t)}("undefined"!=typeof window?window:this,document);

View File

@@ -0,0 +1,58 @@
/* eslint-disable semi */
/* eslint-disable no-undef */
let urlData = getQueryString()
//获取url参数
let channelData = urlData.channel
//定义官方渠道包
const channelDict = {
'yinyou0': 'https://image.lecheng163.com/yinyou_yinyou0.apk',
'yinyou1': 'https://image.lecheng163.com/yinyou_yinyou1.apk',
'yinyou2': 'https://image.lecheng163.com/yinyou_yinyou2.apk',
'yinyou3': 'https://image.lecheng163.com/yinyou_yinyou3.apk',
'yinyou4': 'https://image.lecheng163.com/yinyou_yinyou4.apk',
'yinyou5': 'https://image.lecheng163.com/yinyou_yinyou5.apk',
'yinyou6': 'https://image.lecheng163.com/yinyou_yinyou6.apk',
'yinyou7': 'https://image.lecheng163.com/yinyou_yinyou7.apk',
'yinyou8': 'https://image.lecheng163.com/yinyou_yinyou8.apk',
'yinyou9': 'https://image.lecheng163.com/yinyou_yinyou9.apk',
'yinyou10': 'https://image.lecheng163.com/yinyou_yinyou10.apk',
'gongzhonghao': 'https://image.lecheng163.com/yinyou_gongzhonghao.apk',
'zhaohui': 'https://image.lecheng163.com/zhaohui.apk'
// 'baomihua01': 'https://image.lecheng163.com/accompany_release_v_213_1_baomihua01_sign.apk'
}
$(function () {
let version = checkVersion()
//判断url参数是否是与渠道包名一致
let androidUrl = null;
channelDict.hasOwnProperty(channelData) ? androidUrl = channelDict[channelData] : androidUrl = 'https://image.lecheng163.com/yinyou_official.apk';
let iosUrl = 'http://doudouyue.com/8axv' //ios企业包
// let iosUrl = 'https://apps.apple.com/cn/app/id1571083482' //ios商店包
if (version.ios) {
$('.button-wrapper').on('click', function () {
if (version.weixin) {
$('.tips').show()
return
}
window.location.href = iosUrl;
})
} else if (version.android) {
$('.button-wrapper').on('click', function () {
if (version.weixin) {
$('.tips').show()
return
}
window.location.href = androidUrl;
})
} else {
$('.button-wrapper').on('click', function () {
window.location.href = androidUrl;
})
$('.button2-wrapper').on('click', function () {
window.location.href = iosUrl;
})
}
})

4
view/support/support/js/jquery.min.js vendored Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,6 @@
/*! Respond.js v1.4.2: min/max-width media query polyfill
* Copyright 2014 Scott Jehl
* Licensed under MIT
* http://j.mp/respondjs */
!function(a){"use strict";a.matchMedia=a.matchMedia||function(a){var b,c=a.documentElement,d=c.firstElementChild||c.firstChild,e=a.createElement("body"),f=a.createElement("div");return f.id="mq-test-1",f.style.cssText="position:absolute;top:-100em",e.style.background="none",e.appendChild(f),function(a){return f.innerHTML='&shy;<style media="'+a+'"> #mq-test-1 { width: 42px; }</style>',c.insertBefore(e,d),b=42===f.offsetWidth,c.removeChild(e),{matches:b,media:a}}}(a.document)}(this),function(a){"use strict";function b(){v(!0)}var c={};a.respond=c,c.update=function(){};var d=[],e=function(){var b=!1;try{b=new a.XMLHttpRequest}catch(c){b=new a.ActiveXObject("Microsoft.XMLHTTP")}return function(){return b}}(),f=function(a,b){var c=e();c&&(c.open("GET",a,!0),c.onreadystatechange=function(){4!==c.readyState||200!==c.status&&304!==c.status||b(c.responseText)},4!==c.readyState&&c.send(null))},g=function(a){return a.replace(c.regex.minmaxwh,"").match(c.regex.other)};if(c.ajax=f,c.queue=d,c.unsupportedmq=g,c.regex={media:/@media[^\{]+\{([^\{\}]*\{[^\}\{]*\})+/gi,keyframes:/@(?:\-(?:o|moz|webkit)\-)?keyframes[^\{]+\{(?:[^\{\}]*\{[^\}\{]*\})+[^\}]*\}/gi,comments:/\/\*[^*]*\*+([^/][^*]*\*+)*\//gi,urls:/(url\()['"]?([^\/\)'"][^:\)'"]+)['"]?(\))/g,findStyles:/@media *([^\{]+)\{([\S\s]+?)$/,only:/(only\s+)?([a-zA-Z]+)\s?/,minw:/\(\s*min\-width\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/,maxw:/\(\s*max\-width\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/,minmaxwh:/\(\s*m(in|ax)\-(height|width)\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/gi,other:/\([^\)]*\)/g},c.mediaQueriesSupported=a.matchMedia&&null!==a.matchMedia("only all")&&a.matchMedia("only all").matches,!c.mediaQueriesSupported){var h,i,j,k=a.document,l=k.documentElement,m=[],n=[],o=[],p={},q=30,r=k.getElementsByTagName("head")[0]||l,s=k.getElementsByTagName("base")[0],t=r.getElementsByTagName("link"),u=function(){var a,b=k.createElement("div"),c=k.body,d=l.style.fontSize,e=c&&c.style.fontSize,f=!1;return b.style.cssText="position:absolute;font-size:1em;width:1em",c||(c=f=k.createElement("body"),c.style.background="none"),l.style.fontSize="100%",c.style.fontSize="100%",c.appendChild(b),f&&l.insertBefore(c,l.firstChild),a=b.offsetWidth,f?l.removeChild(c):c.removeChild(b),l.style.fontSize=d,e&&(c.style.fontSize=e),a=j=parseFloat(a)},v=function(b){var c="clientWidth",d=l[c],e="CSS1Compat"===k.compatMode&&d||k.body[c]||d,f={},g=t[t.length-1],p=(new Date).getTime();if(b&&h&&q>p-h)return a.clearTimeout(i),i=a.setTimeout(v,q),void 0;h=p;for(var s in m)if(m.hasOwnProperty(s)){var w=m[s],x=w.minw,y=w.maxw,z=null===x,A=null===y,B="em";x&&(x=parseFloat(x)*(x.indexOf(B)>-1?j||u():1)),y&&(y=parseFloat(y)*(y.indexOf(B)>-1?j||u():1)),w.hasquery&&(z&&A||!(z||e>=x)||!(A||y>=e))||(f[w.media]||(f[w.media]=[]),f[w.media].push(n[w.rules]))}for(var C in o)o.hasOwnProperty(C)&&o[C]&&o[C].parentNode===r&&r.removeChild(o[C]);o.length=0;for(var D in f)if(f.hasOwnProperty(D)){var E=k.createElement("style"),F=f[D].join("\n");E.type="text/css",E.media=D,r.insertBefore(E,g.nextSibling),E.styleSheet?E.styleSheet.cssText=F:E.appendChild(k.createTextNode(F)),o.push(E)}},w=function(a,b,d){var e=a.replace(c.regex.comments,"").replace(c.regex.keyframes,"").match(c.regex.media),f=e&&e.length||0;b=b.substring(0,b.lastIndexOf("/"));var h=function(a){return a.replace(c.regex.urls,"$1"+b+"$2$3")},i=!f&&d;b.length&&(b+="/"),i&&(f=1);for(var j=0;f>j;j++){var k,l,o,p;i?(k=d,n.push(h(a))):(k=e[j].match(c.regex.findStyles)&&RegExp.$1,n.push(RegExp.$2&&h(RegExp.$2))),o=k.split(","),p=o.length;for(var q=0;p>q;q++)l=o[q],g(l)||m.push({media:l.split("(")[0].match(c.regex.only)&&RegExp.$2||"all",rules:n.length-1,hasquery:l.indexOf("(")>-1,minw:l.match(c.regex.minw)&&parseFloat(RegExp.$1)+(RegExp.$2||""),maxw:l.match(c.regex.maxw)&&parseFloat(RegExp.$1)+(RegExp.$2||"")})}v()},x=function(){if(d.length){var b=d.shift();f(b.href,function(c){w(c,b.href,b.media),p[b.href]=!0,a.setTimeout(function(){x()},0)})}},y=function(){for(var b=0;b<t.length;b++){var c=t[b],e=c.href,f=c.media,g=c.rel&&"stylesheet"===c.rel.toLowerCase();e&&g&&!p[e]&&(c.styleSheet&&c.styleSheet.rawCssText?(w(c.styleSheet.rawCssText,e,f),p[e]=!0):(!/^([a-zA-Z:]*\/\/)/.test(e)&&!s||e.replace(RegExp.$1,"").split("/")[0]===a.location.host)&&("//"===e.substring(0,2)&&(e=a.location.protocol+e),d.push({href:e,media:f})))}x()};y(),c.update=y,c.getEmValue=u,a.addEventListener?a.addEventListener("resize",b,!1):a.attachEvent&&a.attachEvent("onresize",b)}}(this);

19
view/support/support/js/swiper.min.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,68 @@
/* utf.js - UTF-8 <=> UTF-16 convertion
*
* Copyright (C) 1999 Masanao Izumo <iz@onicos.co.jp>
* Version: 1.0
* LastModified: Dec 25 1999
* This library is free. You can redistribute it and/or modify it.
*/
/*
* Interfaces:
* utf8 = utf16to8(utf16);
* utf16 = utf16to8(utf8);
*/
function utf16to8(str) {
var out, i, len, c;
out = "";
len = str.length;
for(i = 0; i < len; i++) {
c = str.charCodeAt(i);
if ((c >= 0x0001) && (c <= 0x007F)) {
out += str.charAt(i);
} else if (c > 0x07FF) {
out += String.fromCharCode(0xE0 | ((c >> 12) & 0x0F));
out += String.fromCharCode(0x80 | ((c >> 6) & 0x3F));
out += String.fromCharCode(0x80 | ((c >> 0) & 0x3F));
} else {
out += String.fromCharCode(0xC0 | ((c >> 6) & 0x1F));
out += String.fromCharCode(0x80 | ((c >> 0) & 0x3F));
}
}
return out;
}
function utf8to16(str) {
var out, i, len, c;
var char2, char3;
out = "";
len = str.length;
i = 0;
while(i < len) {
c = str.charCodeAt(i++);
switch(c >> 4)
{
case 0: case 1: case 2: case 3: case 4: case 5: case 6: case 7:
// 0xxxxxxx
out += str.charAt(i-1);
break;
case 12: case 13:
// 110x xxxx 10xx xxxx
char2 = str.charCodeAt(i++);
out += String.fromCharCode(((c & 0x1F) << 6) | (char2 & 0x3F));
break;
case 14:
// 1110 xxxx 10xx xxxx 10xx xxxx
char2 = str.charCodeAt(i++);
char3 = str.charCodeAt(i++);
out += String.fromCharCode(((c & 0x0F) << 12) |
((char2 & 0x3F) << 6) |
((char3 & 0x3F) << 0));
break;
}
}
return out;
}

View File

@@ -0,0 +1,24 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<title>技术服务支持</title>
<link rel="stylesheet" href="../../common/css/reset.css">
<link rel="stylesheet" href="./css/index.css">
<style>
* {
margin: 0;
padding: 0;
}
</style>
</head>
<body>
<img src="./images/support_moli.png" alt="" style="width: 100%;">
<!-- <script src="../../common/js/flexible.js"></script> -->
</body>
</html>

View File

@@ -0,0 +1,24 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<title>技术服务支持</title>
<link rel="stylesheet" href="../../common/css/reset.css">
<link rel="stylesheet" href="./css/index.css">
<style>
* {
margin: 0;
padding: 0;
}
</style>
</head>
<body>
<img src="./images/support_deep.png" alt="" style="width: 100%;">
<!-- <script src="../../common/js/flexible.js"></script> -->
</body>
</html>

View File

@@ -0,0 +1,169 @@
html,
body {
width: 100%;
background: #F4F4FA;
}
.back {
position: fixed;
top: 0.9333333333rem;
left: 0.4533333333rem;
z-index: 9;
width: 0.8266666667rem;
height: 0.8266666667rem;
}
.back img {
width: 100%;
height: 100%;
}
input {
width: 9.2rem;
height: 0.8533333333rem;
border-radius: 0.8533333333rem;
outline: none;
border: none;
background: #fff;
display: block;
margin: 2.5733333333rem auto 0.4266666667rem;
box-sizing: border-box;
padding: 0 0.44rem;
}
.title {
position: fixed;
top: 0;
left: 0;
width: 100%;
text-align: center;
color: #482F2F;
font-size: 0.4533333333rem;
height: 2.08rem;
line-height: 2.6rem;
background: #fff;
}
ul {
width: 9.2rem;
height: 17rem;
margin: 0 auto 0;
overflow-y: scroll;
}
ul li {
width: 100%;
height: 1.4933333333rem;
margin-bottom: 0.4rem;
}
ul li .left {
width: 1.4933333333rem;
height: 1.4933333333rem;
border-radius: 50%;
float: left;
}
ul li .left img {
display: block;
width: 100%;
height: 100%;
border-radius: 50%;
background: #FF7489;
}
ul li .right {
float: right;
width: 7.2rem;
height: 100%;
border-bottom: 0.0133333333rem solid #E4E4E4;
}
ul li .right p {
font-size: 0.3733333333rem;
color: #171A58;
margin-top: 0.3066666667rem;
margin-bottom: 0.2rem;
width: 100%;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
ul li .right span {
display: block;
width: 100%;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
color: #8A8CAB;
font-size: 0.32rem;
}
.confirmTheGift {
display: none;
position: fixed;
left: 0;
top: 0;
bottom: 0;
right: 0;
z-index: 999;
background: rgba(0, 0, 0, 0.8);
}
.confirmTheGift .confirmTheGift_in {
width: 8rem;
height: 5.6133333333rem;
background: linear-gradient(90deg, #DAFFFC 0%, #FFFBE6 47%, #FFD5EC 100%);
position: relative;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
border-radius: 0.5333333333rem;
box-sizing: border-box;
}
.confirmTheGift .confirmTheGift_in .confirmTheGift_in_title {
width: 100%;
text-align: center;
position: absolute;
left: 0;
top: 0.5333333333rem;
color: #990D39;
font-size: 0.3466666667rem;
font-weight: bold;
}
.confirmTheGift .confirmTheGift_in .confirmTheGift_in_title b {
color: #503938;
font-weight: bold;
}
.confirmTheGift .confirmTheGift_in .confirmTheGift_in_title i {
font-style: normal;
font-weight: bold;
}
.confirmTheGift .confirmTheGift_in .gift {
width: 2.1333333333rem;
height: 2.1333333333rem;
background: #FFADB7;
border-radius: 50%;
position: absolute;
left: 50%;
transform: translateX(-50%);
top: 1.48rem;
}
.confirmTheGift .confirmTheGift_in .but1 {
text-align: center;
color: #482F2F;
font-size: 0.3733333333rem;
font-weight: bold;
line-height: 0.96rem;
width: 2.9333333333rem;
height: 0.96rem;
border-radius: 0.96rem;
position: absolute;
left: 0.8rem;
top: 4.2133333333rem;
background: #fff;
}
.confirmTheGift .confirmTheGift_in .but2 {
width: 2.9333333333rem;
height: 0.96rem;
position: absolute;
right: 0.8rem;
top: 4.2133333333rem;
background: url(../images/confirmTheGift_in_but2.png) no-repeat;
background-size: 100% 100%;
}
/*# sourceMappingURL=friends.css.map */

View File

@@ -0,0 +1,187 @@
@function px2rem($px, $rem:75) {
@return $px / $rem+rem;
}
html,
body {
width: 100%;
// height: 100%;
background: #F4F4FA;
}
.back {
position: fixed;
top: px2rem(70, );
left: px2rem(34, );
z-index: 9;
width: px2rem(62, );
height: px2rem(62, );
img {
width: 100%;
height: 100%;
}
}
input {
width: px2rem(690, );
height: px2rem(64, );
border-radius: px2rem(64, );
outline: none;
border: none;
background: #fff;
display: block;
margin: px2rem(193, ) auto px2rem(32, );
box-sizing: border-box;
padding: 0 px2rem(33, );
}
.title {
position: fixed;
top: 0;
left: 0;
width: 100%;
text-align: center;
color: #482F2F;
font-size: px2rem(34, );
height: px2rem(156, );
line-height: 2.6rem;
background: #fff;
}
ul {
width: px2rem(690, );
height: 17rem;
// background: pink;
margin: 0 auto 0;
overflow-y: scroll;
li {
width: 100%;
height: px2rem(112, );
margin-bottom: px2rem(30, );
.left {
width: px2rem(112, );
height: px2rem(112, );
border-radius: 50%;
float: left;
img {
display: block;
width: 100%;
height: 100%;
border-radius: 50%;
background: #FF7489;
}
}
.right {
float: right;
width: 7.2rem;
height: 100%;
border-bottom: px2rem(1, ) solid #E4E4E4;
p {
font-size: px2rem(28, );
color: #171A58;
margin-top: px2rem(23, );
margin-bottom: px2rem(15, );
width: 100%;
overflow: hidden; //超出隐藏
white-space: nowrap; //不折行
text-overflow: ellipsis; //溢出显示省略号
}
span {
display: block;
width: 100%;
overflow: hidden; //超出隐藏
white-space: nowrap; //不折行
text-overflow: ellipsis; //溢出显示省略号
color: #8A8CAB;
font-size: px2rem(24, );
}
}
}
}
.confirmTheGift {
display: none;
position: fixed;
left: 0;
top: 0;
bottom: 0;
right: 0;
z-index: 999;
background: rgba(0, 0, 0, .8);
.confirmTheGift_in {
width: px2rem(600, );
height: px2rem(421, );
background: linear-gradient(90deg, #DAFFFC 0%, #FFFBE6 47%, #FFD5EC 100%);
position: relative;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
border-radius: px2rem(40, );
box-sizing: border-box;
.confirmTheGift_in_title {
width: 100%;
text-align: center;
position: absolute;
left: 0;
top: px2rem(40, );
color: #990D39;
font-size: px2rem(26, );
font-weight: bold;
b {
color: #503938;
font-weight: bold;
}
i {
font-style: normal;
font-weight: bold;
}
}
.gift {
width: px2rem(160, );
height: px2rem(160, );
background: #FFADB7;
border-radius: 50%;
position: absolute;
left: 50%;
transform: translateX(-50%);
top: px2rem(111, );
}
.but1 {
text-align: center;
color: #482F2F;
font-size: px2rem(28, );
font-weight: bold;
line-height: px2rem(72, );
width: px2rem(220, );
height: px2rem(72, );
border-radius: px2rem(72, );
position: absolute;
left: px2rem(60, );
top: px2rem(316, );
background: #fff;
}
.but2 {
width: px2rem(220, );
height: px2rem(72, );
position: absolute;
right: px2rem(60, );
top: px2rem(316, );
background: url(../images/confirmTheGift_in_but2.png) no-repeat;
background-size: 100% 100%;
}
}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,24 @@
html,
body {
width: 100%;
height: 21.6533333333rem;
background-color: #BDADFF;
background-image: url(../images/shareBg.png);
background-size: 100% 21.6533333333rem;
background-repeat: no-repeat;
position: relative;
left: 50%;
transform: translateX(-50%);
top: 0;
}
html img,
body img {
position: absolute;
width: 3.3466666667rem;
height: 3.3466666667rem;
border-radius: 50%;
top: 8.8rem;
left: 3.8933333333rem;
}
/*# sourceMappingURL=share.css.map */

View File

@@ -0,0 +1,26 @@
@function px2rem($px, $rem:75) {
@return $px / $rem+rem;
}
html,
body {
width: 100%;
height: px2rem(1624, );
background-color: #BDADFF;
background-image: url(../images/shareBg.png);
background-size: 100% px2rem(1624, );
background-repeat: no-repeat;
position: relative;
left: 50%;
transform: translateX(-50%);
top: 0;
img {
position: absolute;
width: px2rem(251, );
height: px2rem(251, );
border-radius: 50%;
top: px2rem(660, );
left: px2rem(292, );
}
}

View File

@@ -0,0 +1,51 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>好友</title>
<link rel="stylesheet" href="../../common/css/reset.css">
<link rel="stylesheet" href="../../common/css/swiper.min.css">
<link rel="stylesheet" href="./css/friends.css">
</head>
<body>
<!-- 顶部返回 -->
<div class="back"><img src="./images/travel/back.png" alt=""></div>
<div class="title">好友</div>
<input type="text" placeholder="搜索好友">
<ul>
<!-- <li uid="936887">
<div class="left">
<img src="./images/people.png" alt="">
</div>
<div class="right">
<p>用户昵称1</p>
<span>你好啊,好久不见是吧,不见就不见不见就不见不不见不不见不不见不不见不不见不</span>
</div>
</li> -->
</ul>
<!-- 确定赠送按钮 -->
<div class="confirmTheGift">
<div class="confirmTheGift_in">
<p class="confirmTheGift_in_title">确定赠送“<b>用户昵称</b>”一张 <i>礼物昵称</i> 愿望卡吗?</p>
<img src="" alt="" class="gift">
<div class="but1">取消</div>
<div class="but2"></div>
</div>
</div>
</body>
<script src="../../common/js/flexible.js"></script>
<script src="../../common/js/jquery-3.2.1.min.js"></script>
<script src="../../common/js/common2.js"></script>
<script src="../../common/js/layer.js"></script>
<script src="../../common/js/vconsole.min.js"></script>
<script src="../../common/js/route-constant.js"></script>
<script src="../../common/js/svga.min.js"></script>
<script src="../../common/js/swiper.min.js"></script>
<script src="./js/friends.js"></script>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 953 B

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 850 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 572 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 918 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 575 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 395 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 803 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 134 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 200 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 503 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

Some files were not shown because too many files have changed in this diff Show More