first commit
This commit is contained in:
44
css/page/domestic.css
Normal file
44
css/page/domestic.css
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
@import "../tool/color.css";
|
||||||
|
@import "../tool/size.css";
|
||||||
|
@import "../tool/utils.css";
|
||||||
|
|
||||||
|
.type_list {
|
||||||
|
overflow-x: scroll;
|
||||||
|
height: .8rem;
|
||||||
|
li {
|
||||||
|
flex-shrink: 0;
|
||||||
|
font-size: var(--f16);
|
||||||
|
color: var(--textColor);
|
||||||
|
margin-right: var(--f10);
|
||||||
|
position: relative;
|
||||||
|
&:last-child {
|
||||||
|
margin-right: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.active {
|
||||||
|
&::after {
|
||||||
|
content: "";
|
||||||
|
width: .6rem;
|
||||||
|
height: .1rem;
|
||||||
|
border-radius: .5rem;
|
||||||
|
background: var(--themeColor);
|
||||||
|
display: inline-block;
|
||||||
|
position: absolute;
|
||||||
|
bottom: -0.24rem;
|
||||||
|
left: 50%;
|
||||||
|
transform: translateX(-50%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.type_list_content {
|
||||||
|
.swiper-slide {
|
||||||
|
font-size: var(--f16);
|
||||||
|
height: calc(100vh - .96rem - .8rem - 1rem);
|
||||||
|
overflow-y: scroll;
|
||||||
|
}
|
||||||
|
.default-model {
|
||||||
|
margin-top: 0 !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
0
css/page/hot.css
Normal file
0
css/page/hot.css
Normal file
62
css/page/index.css
Normal file
62
css/page/index.css
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
/* 首页的css */
|
||||||
|
@import "../tool/color.css";
|
||||||
|
@import "../tool/size.css";
|
||||||
|
@import "../tool/utils.css";
|
||||||
|
|
||||||
|
|
||||||
|
.header {
|
||||||
|
.search {
|
||||||
|
font-size: var(--f15);
|
||||||
|
margin-top: .16rem;
|
||||||
|
color: var(--tipsTextColor);
|
||||||
|
height: 80%;
|
||||||
|
background: #f5f5f5;
|
||||||
|
border-radius: .5rem;
|
||||||
|
padding: 0 .2rem;
|
||||||
|
box-sizing: border-box;
|
||||||
|
i {
|
||||||
|
margin-right: .16rem;
|
||||||
|
}
|
||||||
|
p {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.content {
|
||||||
|
padding-top: 20px;
|
||||||
|
.banner {
|
||||||
|
width: calc(100% - .6rem);
|
||||||
|
border-radius: .6rem;
|
||||||
|
transform :translateY(0);
|
||||||
|
img {
|
||||||
|
width: 100%;
|
||||||
|
border-radius: .6rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.swiper-slide{
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.recommend-tag {
|
||||||
|
margin: 0.4rem 0;
|
||||||
|
justify-content: space-between;
|
||||||
|
li {
|
||||||
|
color: var(--textColor);
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
.icon {
|
||||||
|
font-size: var(--f25);
|
||||||
|
margin-bottom: .14rem;
|
||||||
|
}
|
||||||
|
.title {
|
||||||
|
font-size: var(--f14);
|
||||||
|
color: var(--tipsTextColor);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
44
css/page/info.css
Normal file
44
css/page/info.css
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
@import "../tool/color.css";
|
||||||
|
@import "../tool/size.css";
|
||||||
|
@import "../tool/utils.css";
|
||||||
|
|
||||||
|
|
||||||
|
.header {
|
||||||
|
|
||||||
|
.ilist {
|
||||||
|
i {
|
||||||
|
font-size: var(--f22) !important;
|
||||||
|
}
|
||||||
|
.icon-wujiaoxing {
|
||||||
|
margin-right: var(--f10);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.content {
|
||||||
|
.info_img_list {
|
||||||
|
.img_list {
|
||||||
|
height: 800px;
|
||||||
|
overflow: hidden;
|
||||||
|
img {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.view_all {
|
||||||
|
font-size: var(--f16);
|
||||||
|
color: var(--themeColor);
|
||||||
|
width: 100%;
|
||||||
|
height: 60px;
|
||||||
|
bottom: 0;
|
||||||
|
background: linear-gradient(#ffffff08, #fefefe);
|
||||||
|
padding-top: .6rem;
|
||||||
|
box-sizing: border-box;
|
||||||
|
div {}
|
||||||
|
i {
|
||||||
|
margin-left: .1rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
0
css/page/me.css
Normal file
0
css/page/me.css
Normal file
51
css/page/search.css
Normal file
51
css/page/search.css
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
@import "../tool/color.css";
|
||||||
|
@import "../tool/size.css";
|
||||||
|
@import "../tool/utils.css";
|
||||||
|
|
||||||
|
.header {
|
||||||
|
color: var(--textColor);
|
||||||
|
|
||||||
|
input {
|
||||||
|
margin: 0 .16rem;
|
||||||
|
font-size: var(--f15);
|
||||||
|
color: var(--tipsTextColor);
|
||||||
|
height: 80%;
|
||||||
|
background: #f5f5f5;
|
||||||
|
border-radius: .5rem;
|
||||||
|
padding: 0 .2rem;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
div {
|
||||||
|
font-size: 0.32rem !important;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.content {
|
||||||
|
.no-search {
|
||||||
|
padding-top: .4rem;
|
||||||
|
}
|
||||||
|
.have-search {
|
||||||
|
padding-top: .02rem;
|
||||||
|
}
|
||||||
|
.search_list {
|
||||||
|
margin-bottom: .7rem;
|
||||||
|
.title {
|
||||||
|
height: 40px;
|
||||||
|
font-size: var(--f13);
|
||||||
|
color: var(--tipsTextColor);
|
||||||
|
margin-bottom: 0.14rem;
|
||||||
|
}
|
||||||
|
ul {
|
||||||
|
li {
|
||||||
|
padding: 0 var(--f10);
|
||||||
|
margin-bottom: .16rem;
|
||||||
|
a {
|
||||||
|
font-size: var(--f16);
|
||||||
|
color: var(--textColor);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
0
css/page/tagListInfo.css
Normal file
0
css/page/tagListInfo.css
Normal file
521
css/tool/clear.css
Normal file
521
css/tool/clear.css
Normal file
@@ -0,0 +1,521 @@
|
|||||||
|
/* 清除默认样式 */
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2020. bmy
|
||||||
|
*/
|
||||||
|
|
||||||
|
.iconfont {
|
||||||
|
font-size: .32rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
p,
|
||||||
|
body,
|
||||||
|
h1,
|
||||||
|
h2,
|
||||||
|
h3,
|
||||||
|
h4,
|
||||||
|
h5,
|
||||||
|
h6,
|
||||||
|
ul,
|
||||||
|
li {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
html {
|
||||||
|
font-family: sans-serif;
|
||||||
|
/* 1 */
|
||||||
|
line-height: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
width: 100%;
|
||||||
|
font-size: 0px;
|
||||||
|
background-color: #fff;
|
||||||
|
color: rgba(0, 0, 0, 0.87);
|
||||||
|
}
|
||||||
|
|
||||||
|
::-webkit-scrollbar {
|
||||||
|
width: 0;
|
||||||
|
height: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: #000;
|
||||||
|
}
|
||||||
|
|
||||||
|
li {
|
||||||
|
list-style: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
article,
|
||||||
|
aside,
|
||||||
|
footer,
|
||||||
|
header,
|
||||||
|
nav,
|
||||||
|
section {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Correct the font size and margin on `h1` elements within `section` and
|
||||||
|
* `article` contexts in Chrome, Firefox, and Safari.
|
||||||
|
*/
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
font-size: 2em;
|
||||||
|
margin: 0.67em 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Grouping content
|
||||||
|
========================================================================== */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add the correct display in IE 9-.
|
||||||
|
* 1. Add the correct display in IE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
figcaption,
|
||||||
|
figure,
|
||||||
|
main {
|
||||||
|
/* 1 */
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add the correct margin in IE 8.
|
||||||
|
*/
|
||||||
|
|
||||||
|
figure {
|
||||||
|
margin: 1em 40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 1. Add the correct box sizing in Firefox.
|
||||||
|
* 2. Show the overflow in Edge and IE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
hr {
|
||||||
|
box-sizing: content-box;
|
||||||
|
/* 1 */
|
||||||
|
height: 0;
|
||||||
|
/* 1 */
|
||||||
|
overflow: visible;
|
||||||
|
/* 2 */
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 1. Correct the inheritance and scaling of font size in all browsers.
|
||||||
|
* 2. Correct the odd `em` font sizing in all browsers.
|
||||||
|
*/
|
||||||
|
|
||||||
|
pre {
|
||||||
|
font-family: monospace, monospace;
|
||||||
|
/* 1 */
|
||||||
|
font-size: 1em;
|
||||||
|
/* 2 */
|
||||||
|
white-space: pre-wrap;
|
||||||
|
word-break: break-all;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Text-level semantics
|
||||||
|
========================================================================== */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 1. Remove the gray background on active links in IE 10.
|
||||||
|
* 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
|
||||||
|
*/
|
||||||
|
|
||||||
|
a {
|
||||||
|
text-decoration: none;
|
||||||
|
background-color: transparent;
|
||||||
|
/* 1 */
|
||||||
|
-webkit-text-decoration-skip: objects;
|
||||||
|
/* 2 */
|
||||||
|
user-select: none;
|
||||||
|
-webkit-user-select: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remove the outline on focused links when they are also active or hovered
|
||||||
|
* in all browsers (opinionated).
|
||||||
|
*/
|
||||||
|
|
||||||
|
a:active,
|
||||||
|
a:hover {
|
||||||
|
outline-width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 1. Remove the bottom border in Firefox 39-.
|
||||||
|
* 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
|
||||||
|
*/
|
||||||
|
|
||||||
|
abbr[title] {
|
||||||
|
border-bottom: none;
|
||||||
|
/* 1 */
|
||||||
|
text-decoration: underline;
|
||||||
|
/* 2 */
|
||||||
|
text-decoration: underline dotted;
|
||||||
|
/* 2 */
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Prevent the duplicate application of `bolder` by the next rule in Safari 6.
|
||||||
|
*/
|
||||||
|
|
||||||
|
b,
|
||||||
|
strong {
|
||||||
|
font-weight: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add the correct font weight in Chrome, Edge, and Safari.
|
||||||
|
*/
|
||||||
|
|
||||||
|
b,
|
||||||
|
strong {
|
||||||
|
font-weight: bolder;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 1. Correct the inheritance and scaling of font size in all browsers.
|
||||||
|
* 2. Correct the odd `em` font sizing in all browsers.
|
||||||
|
*/
|
||||||
|
|
||||||
|
code,
|
||||||
|
kbd,
|
||||||
|
samp {
|
||||||
|
font-family: monospace, monospace;
|
||||||
|
/* 1 */
|
||||||
|
font-size: 1em;
|
||||||
|
/* 2 */
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add the correct font style in Android 4.3-.
|
||||||
|
*/
|
||||||
|
|
||||||
|
dfn {
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add the correct background and color in IE 9-.
|
||||||
|
*/
|
||||||
|
|
||||||
|
mark {
|
||||||
|
background-color: #ff0;
|
||||||
|
color: #000;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add the correct font size in all browsers.
|
||||||
|
*/
|
||||||
|
|
||||||
|
small {
|
||||||
|
font-size: 80%;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Prevent `sub` and `sup` elements from affecting the line height in
|
||||||
|
* all browsers.
|
||||||
|
*/
|
||||||
|
|
||||||
|
sub,
|
||||||
|
sup {
|
||||||
|
font-size: 75%;
|
||||||
|
line-height: 0;
|
||||||
|
position: relative;
|
||||||
|
vertical-align: baseline;
|
||||||
|
}
|
||||||
|
|
||||||
|
sub {
|
||||||
|
bottom: -0.25em;
|
||||||
|
}
|
||||||
|
|
||||||
|
sup {
|
||||||
|
top: -0.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Embedded content
|
||||||
|
========================================================================== */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add the correct display in IE 9-.
|
||||||
|
*/
|
||||||
|
|
||||||
|
audio,
|
||||||
|
video {
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add the correct display in iOS 4-7.
|
||||||
|
*/
|
||||||
|
|
||||||
|
audio:not([controls]) {
|
||||||
|
display: none;
|
||||||
|
height: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remove the border on images inside links in IE 10-.
|
||||||
|
*/
|
||||||
|
|
||||||
|
img {
|
||||||
|
border-style: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Hide the overflow in IE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
svg:not(:root) {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Forms
|
||||||
|
========================================================================== */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 1. Change the font styles in all browsers (opinionated).
|
||||||
|
* 2. Remove the margin in Firefox and Safari.
|
||||||
|
*/
|
||||||
|
|
||||||
|
button,
|
||||||
|
input,
|
||||||
|
optgroup,
|
||||||
|
select,
|
||||||
|
textarea {
|
||||||
|
border: none;
|
||||||
|
outline: none;
|
||||||
|
font-family: sans-serif;
|
||||||
|
/* 1 */
|
||||||
|
font-size: 100%;
|
||||||
|
/* 1 */
|
||||||
|
line-height: 1.15;
|
||||||
|
/* 1 */
|
||||||
|
margin: 0;
|
||||||
|
/* 2 */
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Show the overflow in IE.
|
||||||
|
* 1. Show the overflow in Edge.
|
||||||
|
*/
|
||||||
|
|
||||||
|
button,
|
||||||
|
input {
|
||||||
|
/* 1 */
|
||||||
|
overflow: visible;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remove the inheritance of text transform in Edge, Firefox, and IE.
|
||||||
|
* 1. Remove the inheritance of text transform in Firefox.
|
||||||
|
*/
|
||||||
|
|
||||||
|
button,
|
||||||
|
select {
|
||||||
|
/* 1 */
|
||||||
|
text-transform: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
|
||||||
|
* controls in Android 4.
|
||||||
|
* 2. Correct the inability to style clickable types in iOS and Safari.
|
||||||
|
*/
|
||||||
|
|
||||||
|
button,
|
||||||
|
html [type="button"],
|
||||||
|
/* 1 */
|
||||||
|
[type="reset"],
|
||||||
|
[type="submit"] {
|
||||||
|
-webkit-appearance: button;
|
||||||
|
/* 2 */
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remove the inner border and padding in Firefox.
|
||||||
|
*/
|
||||||
|
|
||||||
|
button::-moz-focus-inner,
|
||||||
|
[type="button"]::-moz-focus-inner,
|
||||||
|
[type="reset"]::-moz-focus-inner,
|
||||||
|
[type="submit"]::-moz-focus-inner {
|
||||||
|
border-style: none;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Restore the focus styles unset by the previous rule.
|
||||||
|
*/
|
||||||
|
|
||||||
|
button:-moz-focusring,
|
||||||
|
[type="button"]:-moz-focusring,
|
||||||
|
[type="reset"]:-moz-focusring,
|
||||||
|
[type="submit"]:-moz-focusring {
|
||||||
|
outline: 1px dotted ButtonText;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Change the border, margin, and padding in all browsers (opinionated).
|
||||||
|
*/
|
||||||
|
|
||||||
|
fieldset {
|
||||||
|
border: 1px solid #c0c0c0;
|
||||||
|
margin: 0 2px;
|
||||||
|
padding: 0.35em 0.625em 0.75em;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 1. Correct the text wrapping in Edge and IE.
|
||||||
|
* 2. Correct the color inheritance from `fieldset` elements in IE.
|
||||||
|
* 3. Remove the padding so developers are not caught out when they zero out
|
||||||
|
* `fieldset` elements in all browsers.
|
||||||
|
*/
|
||||||
|
|
||||||
|
legend {
|
||||||
|
box-sizing: border-box;
|
||||||
|
/* 1 */
|
||||||
|
color: inherit;
|
||||||
|
/* 2 */
|
||||||
|
display: table;
|
||||||
|
/* 1 */
|
||||||
|
max-width: 100%;
|
||||||
|
/* 1 */
|
||||||
|
padding: 0;
|
||||||
|
/* 3 */
|
||||||
|
white-space: normal;
|
||||||
|
/* 1 */
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 1. Add the correct display in IE 9-.
|
||||||
|
* 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
|
||||||
|
*/
|
||||||
|
|
||||||
|
progress {
|
||||||
|
display: inline-block;
|
||||||
|
/* 1 */
|
||||||
|
vertical-align: baseline;
|
||||||
|
/* 2 */
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remove the default vertical scrollbar in IE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
textarea {
|
||||||
|
overflow: auto;
|
||||||
|
resize: vertical;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 1. Add the correct box sizing in IE 10-.
|
||||||
|
* 2. Remove the padding in IE 10-.
|
||||||
|
*/
|
||||||
|
|
||||||
|
[type="checkbox"],
|
||||||
|
[type="radio"] {
|
||||||
|
box-sizing: border-box;
|
||||||
|
/* 1 */
|
||||||
|
padding: 0;
|
||||||
|
/* 2 */
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Correct the cursor style of increment and decrement buttons in Chrome.
|
||||||
|
*/
|
||||||
|
|
||||||
|
[type="number"]::-webkit-inner-spin-button,
|
||||||
|
[type="number"]::-webkit-outer-spin-button {
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 1. Correct the odd appearance in Chrome and Safari.
|
||||||
|
* 2. Correct the outline style in Safari.
|
||||||
|
*/
|
||||||
|
|
||||||
|
[type="search"] {
|
||||||
|
-webkit-appearance: textfield;
|
||||||
|
/* 1 */
|
||||||
|
outline-offset: -2px;
|
||||||
|
/* 2 */
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
|
||||||
|
*/
|
||||||
|
|
||||||
|
[type="search"]::-webkit-search-cancel-button,
|
||||||
|
[type="search"]::-webkit-search-decoration {
|
||||||
|
-webkit-appearance: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 1. Correct the inability to style clickable types in iOS and Safari.
|
||||||
|
* 2. Change font properties to `inherit` in Safari.
|
||||||
|
*/
|
||||||
|
|
||||||
|
::-webkit-file-upload-button {
|
||||||
|
-webkit-appearance: button;
|
||||||
|
/* 1 */
|
||||||
|
font: inherit;
|
||||||
|
/* 2 */
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Interactive
|
||||||
|
========================================================================== */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Add the correct display in IE 9-.
|
||||||
|
* 1. Add the correct display in Edge, IE, and Firefox.
|
||||||
|
*/
|
||||||
|
|
||||||
|
details,
|
||||||
|
/* 1 */
|
||||||
|
menu {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Add the correct display in all browsers.
|
||||||
|
*/
|
||||||
|
|
||||||
|
summary {
|
||||||
|
display: list-item;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Scripting
|
||||||
|
========================================================================== */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add the correct display in IE 9-.
|
||||||
|
*/
|
||||||
|
|
||||||
|
canvas {
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add the correct display in IE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
template {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Hidden
|
||||||
|
========================================================================== */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add the correct display in IE 10-.
|
||||||
|
*/
|
||||||
|
|
||||||
|
[hidden] {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
9
css/tool/color.css
Normal file
9
css/tool/color.css
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
/* 存在项目中用到的很多颜色 */
|
||||||
|
|
||||||
|
:root {
|
||||||
|
--swiper-theme-color: var(--themeColor) !important;
|
||||||
|
--themeColor: #fb7299;
|
||||||
|
--whiteColor: #fff;
|
||||||
|
--textColor: #050505;
|
||||||
|
--tipsTextColor: #929292;
|
||||||
|
}
|
||||||
166
css/tool/public.css
Normal file
166
css/tool/public.css
Normal file
@@ -0,0 +1,166 @@
|
|||||||
|
/* 页面公用的css样式 */
|
||||||
|
@import "./color.css";
|
||||||
|
@import "./size.css";
|
||||||
|
@import "./utils.css";
|
||||||
|
|
||||||
|
.header {
|
||||||
|
width: 100%;
|
||||||
|
left: 0;
|
||||||
|
top: 0;
|
||||||
|
background-color: var(--whiteColor);
|
||||||
|
height: .96rem;
|
||||||
|
z-index: 999;
|
||||||
|
padding-top: .08rem;
|
||||||
|
|
||||||
|
.icon-fanhui {
|
||||||
|
font-size: .44rem !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.content {
|
||||||
|
margin-top: .96rem;
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.footer {
|
||||||
|
width: 100%;
|
||||||
|
left: 0;
|
||||||
|
bottom: 0;
|
||||||
|
height: 1rem;
|
||||||
|
background: var(--whiteColor);
|
||||||
|
z-index: 999;
|
||||||
|
|
||||||
|
.active {
|
||||||
|
a {
|
||||||
|
color: var(--themeColor);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
li {
|
||||||
|
a {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
color: var(--blackColor);
|
||||||
|
|
||||||
|
p {
|
||||||
|
font-size: 0.22rem;
|
||||||
|
margin-top: 0.1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
i {
|
||||||
|
font-size: .38rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 这是 theme = 1 的默认布局(垂直)样式
|
||||||
|
1:可以横向滑动
|
||||||
|
2:一行两个 default-model
|
||||||
|
*/
|
||||||
|
.recommend-model {
|
||||||
|
.title {
|
||||||
|
height: 45px;
|
||||||
|
font-size: var(--f19);
|
||||||
|
font-weight: bolder;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list {
|
||||||
|
margin-top: .3rem;
|
||||||
|
overflow-x: scroll;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
li {
|
||||||
|
width: 3rem;
|
||||||
|
margin-right: .2rem;
|
||||||
|
flex-shrink: 0;
|
||||||
|
|
||||||
|
&:last-child {
|
||||||
|
margin-right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
img {
|
||||||
|
width: 100%;
|
||||||
|
height: 225px;
|
||||||
|
margin-bottom: .18rem;
|
||||||
|
border-radius: .14rem;
|
||||||
|
object-fit: cover;
|
||||||
|
}
|
||||||
|
|
||||||
|
.text {
|
||||||
|
font-size: var(--f17);
|
||||||
|
color: var(--textColor);
|
||||||
|
|
||||||
|
margin-bottom: .12rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.desc {
|
||||||
|
font-size: var(--f10);
|
||||||
|
color: var(--tipsTextColor);
|
||||||
|
|
||||||
|
.time {}
|
||||||
|
|
||||||
|
.view {
|
||||||
|
.icon-yanjing {
|
||||||
|
margin-right: .06rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
span {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.default-model {
|
||||||
|
margin-top: .8rem;
|
||||||
|
.list {
|
||||||
|
flex-wrap: wrap;
|
||||||
|
overflow-x: auto;
|
||||||
|
|
||||||
|
li {
|
||||||
|
width: 3.32rem;
|
||||||
|
margin-bottom: .4rem;
|
||||||
|
&:nth-child(2n) {
|
||||||
|
margin-right: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 这是 theme = 2 的布局样式代码
|
||||||
|
图片和文字左右布局
|
||||||
|
*/
|
||||||
|
.item-theme-horizontally {
|
||||||
|
width: 100% !important;
|
||||||
|
|
||||||
|
a {
|
||||||
|
display: flex;
|
||||||
|
|
||||||
|
img {
|
||||||
|
width: 1.8rem !important;
|
||||||
|
height: 1.26rem !important;
|
||||||
|
flex-shrink: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.r {
|
||||||
|
width: calc(100% - 96px);
|
||||||
|
margin-left: .1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.text {
|
||||||
|
overflow: visible;
|
||||||
|
white-space: revert;
|
||||||
|
font-size: var(--f14) !important;
|
||||||
|
line-height: 1.4;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
20
css/tool/size.css
Normal file
20
css/tool/size.css
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
/* 网页的字体 */
|
||||||
|
:root {
|
||||||
|
--f10: .2rem;
|
||||||
|
--f11: .22rem;
|
||||||
|
--f12: .24rem;
|
||||||
|
--f13: .26rem;
|
||||||
|
--f14: .28rem;
|
||||||
|
--f15: .3rem;
|
||||||
|
--f16: .32rem;
|
||||||
|
--f17: .34rem;
|
||||||
|
--f18: .36rem;
|
||||||
|
--f19: .38rem;
|
||||||
|
--f20: .4rem;
|
||||||
|
--f21: .42rem;
|
||||||
|
--f22: .44rem;
|
||||||
|
--f23: .46rem;
|
||||||
|
--f24: .48rem;
|
||||||
|
--f25: .5rem;
|
||||||
|
--f26: .52rem;
|
||||||
|
}
|
||||||
69
css/tool/utils.css
Normal file
69
css/tool/utils.css
Normal file
@@ -0,0 +1,69 @@
|
|||||||
|
/* 公共的css方法 */
|
||||||
|
.flex {
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ais {
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.jc {
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.js {
|
||||||
|
justify-content: space-between;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ja {
|
||||||
|
justify-content: space-around
|
||||||
|
}
|
||||||
|
|
||||||
|
.wrap {
|
||||||
|
flex-wrap: wrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flex1 {
|
||||||
|
flex: 1
|
||||||
|
}
|
||||||
|
|
||||||
|
.column {
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fixed {
|
||||||
|
position: fixed;
|
||||||
|
}
|
||||||
|
|
||||||
|
.relative {
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
.absolute {
|
||||||
|
position: absolute;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.border-box {
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
.p15{
|
||||||
|
padding: 0 var(--f15);
|
||||||
|
}
|
||||||
|
|
||||||
|
.p25{
|
||||||
|
padding: 0 var(--f25);
|
||||||
|
}
|
||||||
|
|
||||||
|
.ellipsis {
|
||||||
|
overflow:hidden;
|
||||||
|
text-overflow:ellipsis;
|
||||||
|
white-space:nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.header_title {
|
||||||
|
color: var(--textColor);
|
||||||
|
font-size: var(--f16);
|
||||||
|
margin: 0 .16rem;
|
||||||
|
}
|
||||||
43
js/config/index.js
Normal file
43
js/config/index.js
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
// var let
|
||||||
|
// 定义的新方式 let
|
||||||
|
let config = {
|
||||||
|
stage: "dev", // dev test prod
|
||||||
|
|
||||||
|
// http://127.0.0.1:8090/app/user/UserInfo
|
||||||
|
|
||||||
|
// 基地址 http://127.0.0.1:8090/app
|
||||||
|
// 短地址 /user/UserInfo
|
||||||
|
|
||||||
|
// 基地址都被 ajax封装调用
|
||||||
|
devUrl: 'http://[240e:362:220c:b200::906]:9940/v1/api',
|
||||||
|
testUrl: 'http://192.168.31.101:3030/test/api',
|
||||||
|
prodUrl: 'https://pc.buyusdt.xyz/v1/api',
|
||||||
|
|
||||||
|
// 帮助ajax判断应该用哪一个基地址
|
||||||
|
checkUrl: function () {
|
||||||
|
switch (this.stage) {
|
||||||
|
case "dev":
|
||||||
|
return this.devUrl
|
||||||
|
break;
|
||||||
|
case "test":
|
||||||
|
return this.testUrl
|
||||||
|
break;
|
||||||
|
case "prod":
|
||||||
|
return this.prodUrl
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
// 短地址 都被 serve 调用
|
||||||
|
urlList: {
|
||||||
|
homeHot: '/home/hot',
|
||||||
|
homeList: '/home/list',
|
||||||
|
homeBanner: '/home/banner',
|
||||||
|
infoList: '/info/list',
|
||||||
|
tagList: '/tag/list',
|
||||||
|
tagRecommend: '/tag/recommend',
|
||||||
|
tagInfo: '/tag/info',
|
||||||
|
searchHot: '/search/hot',
|
||||||
|
searchKey: '/search/key',
|
||||||
|
}
|
||||||
|
}
|
||||||
49
js/http/index.js
Normal file
49
js/http/index.js
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
class Ajax {
|
||||||
|
|
||||||
|
xhr = new XMLHttpRequest()
|
||||||
|
|
||||||
|
get(option) {
|
||||||
|
$("body").mLoading("show")
|
||||||
|
return new Promise((succ, err) => {
|
||||||
|
|
||||||
|
// jquery 是通过 callback 来对异步ajax代码进行封装的
|
||||||
|
$.ajax({
|
||||||
|
type: "GET",
|
||||||
|
// http://192.168.31.101:9940/v1/api + /home/banner
|
||||||
|
url: config.checkUrl() + option.url,
|
||||||
|
data: option.data,
|
||||||
|
success: res => {
|
||||||
|
$("body").mLoading("hide")
|
||||||
|
succ( this.stateChange(res) )
|
||||||
|
},
|
||||||
|
error: msg => {
|
||||||
|
err(msg)
|
||||||
|
}
|
||||||
|
});
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
post(option) {
|
||||||
|
return new Promise((success, error) => {
|
||||||
|
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 对业务状态码进行判断
|
||||||
|
stateChange(res) {
|
||||||
|
switch (res.status) {
|
||||||
|
case 200:
|
||||||
|
return res.data
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 404:
|
||||||
|
alert(res.message)
|
||||||
|
err(this.xhr)
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
57
js/http/index.js-old
Normal file
57
js/http/index.js-old
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
class Ajax {
|
||||||
|
|
||||||
|
xhr = new XMLHttpRequest()
|
||||||
|
|
||||||
|
get(option) {
|
||||||
|
return new Promise((success, error) => {
|
||||||
|
var params = ""
|
||||||
|
for (const key in option.data) {
|
||||||
|
params += `&${key}=${option.data[key]}`
|
||||||
|
}
|
||||||
|
params = params.replace("&", "?")
|
||||||
|
|
||||||
|
// option.url == /home/hot?id=1
|
||||||
|
this.xhr.open("GET", `${config.checkUrl()}${option.url}${params}`)
|
||||||
|
|
||||||
|
this.xhr.send()
|
||||||
|
this.stateChange(success, error)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
post(option) {
|
||||||
|
return new Promise((success, error) => {
|
||||||
|
this.xhr.open("POST", option.url)
|
||||||
|
this.xhr.setRequestHeader("Content-Type", "application/json")
|
||||||
|
// post 参数在请求体(body)中发送
|
||||||
|
this.xhr.send(JSON.stringify(option.data))
|
||||||
|
this.stateChange(success, error)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
stateChange(suc, err) {
|
||||||
|
this.xhr.onreadystatechange = () => {
|
||||||
|
if (this.xhr.readyState == 4) {
|
||||||
|
if (this.xhr.status == 200) {
|
||||||
|
let res = JSON.parse(this.xhr.response)
|
||||||
|
switch (res.status) {
|
||||||
|
case 200:
|
||||||
|
suc(res.data)
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 404:
|
||||||
|
alert(res.message)
|
||||||
|
err(this.xhr)
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
suc()
|
||||||
|
} else {
|
||||||
|
err(this.xhr)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
2
js/lib/jquery.min.js
vendored
Normal file
2
js/lib/jquery.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
14
js/lib/swiper-bundle.min.js
vendored
Normal file
14
js/lib/swiper-bundle.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
136
js/page/domestic.js
Normal file
136
js/page/domestic.js
Normal file
@@ -0,0 +1,136 @@
|
|||||||
|
class Domestic {
|
||||||
|
mySwiper = null;
|
||||||
|
tagList = [];
|
||||||
|
index = localStorage.getItem("index") || 0;
|
||||||
|
|
||||||
|
// 原生js dom操作全部忘记都没关系
|
||||||
|
// diff 虚拟dom 映射(局部渲染) 到真实dom
|
||||||
|
constructor() {
|
||||||
|
header(
|
||||||
|
`<div class="header_title flex1 ellipsis">分类</div>`,
|
||||||
|
``,
|
||||||
|
``
|
||||||
|
)
|
||||||
|
footer()
|
||||||
|
this.getTagServeData()
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
async getTagServeData() {
|
||||||
|
let self = this;
|
||||||
|
|
||||||
|
this.tagList = await tagServe.tagList()
|
||||||
|
console.log(this.tagList);
|
||||||
|
|
||||||
|
eachHtml(
|
||||||
|
".type_list",
|
||||||
|
this.tagList,
|
||||||
|
(v, i) => `<li class="${i == this.index ? 'active' : ''}">${v.title}</li>`
|
||||||
|
)
|
||||||
|
|
||||||
|
$(".swiper-wrapper").append(
|
||||||
|
this.tagList.map(v => {
|
||||||
|
return `<div class="swiper-slide recommend-model default-model">
|
||||||
|
<ul class="flex list p15 js"></ul>
|
||||||
|
</div>`
|
||||||
|
})
|
||||||
|
)
|
||||||
|
|
||||||
|
$(".type_list li").click(function () {
|
||||||
|
$(this).addClass("active").siblings().removeClass("active")
|
||||||
|
self.mySwiper.slideTo($(this).index())
|
||||||
|
})
|
||||||
|
|
||||||
|
this.initSwiper()
|
||||||
|
|
||||||
|
if (this.index == 0) {
|
||||||
|
await this.getTagInfoData()
|
||||||
|
} else {
|
||||||
|
console.log("this.index: ", this.index);
|
||||||
|
this.mySwiper.slideTo(this.index)
|
||||||
|
}
|
||||||
|
|
||||||
|
this.onIScroll()
|
||||||
|
}
|
||||||
|
|
||||||
|
// 第一次调用 点击按钮(滑动轮播图) click
|
||||||
|
// 第二次调用 滚动加载 scroll
|
||||||
|
async getTagInfoData(type = "click") {
|
||||||
|
|
||||||
|
let loadData = async () => {
|
||||||
|
let { totalPage, list } = await tagServe.tagInfo({
|
||||||
|
url: this.tagList[this.index].url,
|
||||||
|
page: this.tagList[this.index].page
|
||||||
|
})
|
||||||
|
|
||||||
|
this.tagList[this.index].totalPage = totalPage
|
||||||
|
this.tagList[this.index].content = [
|
||||||
|
...this.tagList[this.index].content,
|
||||||
|
...list
|
||||||
|
]
|
||||||
|
|
||||||
|
// 向不同的 ul 中插入不同的内容
|
||||||
|
eachHtml(
|
||||||
|
// $(".swiper-slide ul") 返回的是数组
|
||||||
|
// eq 用来获取数组+下标的
|
||||||
|
// [1,2,3][0] 取到的虚拟dom,这种无法使用jquery方法
|
||||||
|
$(".swiper-slide ul").eq(this.index),
|
||||||
|
list,
|
||||||
|
(v) => item(v)
|
||||||
|
)
|
||||||
|
|
||||||
|
//this.onIScroll()
|
||||||
|
}
|
||||||
|
|
||||||
|
if (type == "click") {
|
||||||
|
if (this.tagList[this.index].content.length == 0) {
|
||||||
|
// 加载请求
|
||||||
|
loadData()
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// 加载请求
|
||||||
|
loadData()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
initSwiper() {
|
||||||
|
let self = this;
|
||||||
|
this.mySwiper = new Swiper('.type_list_content', {
|
||||||
|
on: {
|
||||||
|
slideChange: async function () {
|
||||||
|
self.index = this.activeIndex
|
||||||
|
localStorage.setItem("index", self.index)
|
||||||
|
await self.getTagInfoData()
|
||||||
|
$(".type_list li").eq(this.activeIndex).addClass("active").siblings().removeClass("active")
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
onIScroll() {
|
||||||
|
|
||||||
|
let self = this;
|
||||||
|
|
||||||
|
// $(window)
|
||||||
|
$(".swiper-slide").scroll(async function () {
|
||||||
|
let scrollTop = $(this).scrollTop();
|
||||||
|
let ulHeight = $(this).find("ul").height()
|
||||||
|
// 可视区域高度 529
|
||||||
|
let windowHeight = $(this).height();
|
||||||
|
|
||||||
|
console.log("scrollTop: ", scrollTop);
|
||||||
|
console.log("windowHeight: ", windowHeight);
|
||||||
|
console.log("ulHeight: ", ulHeight);
|
||||||
|
|
||||||
|
if (Math.round(scrollTop + windowHeight - 15) >= parseInt(ulHeight)) {
|
||||||
|
console.log("到底部");
|
||||||
|
self.tagList[self.index].page += 1
|
||||||
|
if (self.tagList[self.index].page <= self.tagList[self.index].totalPage) {
|
||||||
|
await self.getTagInfoData("scroll")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
new Domestic
|
||||||
7
js/page/hot.js
Normal file
7
js/page/hot.js
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
class Hot {
|
||||||
|
constructor() {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
new Hot
|
||||||
79
js/page/index.js
Normal file
79
js/page/index.js
Normal file
@@ -0,0 +1,79 @@
|
|||||||
|
class Index {
|
||||||
|
constructor() {
|
||||||
|
|
||||||
|
header(`
|
||||||
|
<div class="search flex1 flex ais">
|
||||||
|
<i class="iconfont icon-sousuo-m"></i>
|
||||||
|
<p>开启精彩搜索..</p>
|
||||||
|
</div>
|
||||||
|
`, '', '')
|
||||||
|
// 虚拟dom(js对象),虚拟dom的数组([{},{}])
|
||||||
|
|
||||||
|
// 数组(不是原生数组,是jq定义的数组)
|
||||||
|
// console.log($("body")[0].innerHTML = ``);
|
||||||
|
// console.log($("body").html(`a`));
|
||||||
|
footer()
|
||||||
|
|
||||||
|
this.getHomeBannerData()
|
||||||
|
this.getHomeHotData()
|
||||||
|
this.getHomeListData()
|
||||||
|
this.getTagRecommendData()
|
||||||
|
|
||||||
|
this.event()
|
||||||
|
}
|
||||||
|
|
||||||
|
event() {
|
||||||
|
$(".search").click(() => {
|
||||||
|
location.href = "./search.html"
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
async getTagRecommendData() {
|
||||||
|
eachHtml(
|
||||||
|
".recommend-tag",
|
||||||
|
await tagServe.tagRecommend(),
|
||||||
|
(v) => `
|
||||||
|
<li>
|
||||||
|
<a class="icon" href="./tagListInfo.html?url=${v.url}&title=${v.title}">${v.title.substr(0,1)}</a>
|
||||||
|
<a class="title" href="./tagListInfo.html?url=${v.url}&title=${v.title}">${v.title}</a>
|
||||||
|
</li>
|
||||||
|
`
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
async getHomeBannerData() {
|
||||||
|
eachHtml(
|
||||||
|
".swiper-wrapper",
|
||||||
|
await homeServe.homeBanner(),
|
||||||
|
(v) => `<div class="swiper-slide"><img src="${v.src}" alt=""></div>`
|
||||||
|
)
|
||||||
|
this.initSwiper()
|
||||||
|
}
|
||||||
|
|
||||||
|
async getHomeListData() {
|
||||||
|
eachHtml(
|
||||||
|
".default-model ul",
|
||||||
|
await homeServe.homeList(),
|
||||||
|
(v) => item(v)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
async getHomeHotData() {
|
||||||
|
eachHtml(
|
||||||
|
".recommend-horizontally ul",
|
||||||
|
await homeServe.homeHot(),
|
||||||
|
(v) => item(v)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
initSwiper() {
|
||||||
|
new Swiper('.banner', {
|
||||||
|
loop: true,
|
||||||
|
pagination: {
|
||||||
|
el: '.swiper-pagination',
|
||||||
|
},
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
new Index
|
||||||
97
js/page/info.js
Normal file
97
js/page/info.js
Normal file
@@ -0,0 +1,97 @@
|
|||||||
|
class Info {
|
||||||
|
title = "";
|
||||||
|
defaultArr = []
|
||||||
|
allArr = [];
|
||||||
|
like = JSON.parse(localStorage.getItem("like")) || [];
|
||||||
|
constructor() {
|
||||||
|
this.init()
|
||||||
|
}
|
||||||
|
|
||||||
|
async init() {
|
||||||
|
await this.getInfoListData()
|
||||||
|
header(
|
||||||
|
`<div class="header_title flex1 ellipsis">${this.title}</div>`,
|
||||||
|
`
|
||||||
|
<div class="ilist">
|
||||||
|
<i class="iconfont icon-wujiaoxing"></i>
|
||||||
|
<i class="iconfont icon-fenxiang"></i>
|
||||||
|
</div>
|
||||||
|
`
|
||||||
|
)
|
||||||
|
this.event()
|
||||||
|
}
|
||||||
|
|
||||||
|
async getInfoListData() {
|
||||||
|
let { title, src_list, recommend } = await infoServe.infoList({
|
||||||
|
id: query("id")
|
||||||
|
})
|
||||||
|
this.title = title
|
||||||
|
|
||||||
|
this.defaultArr = src_list.splice(0, 2)
|
||||||
|
this.allArr = src_list
|
||||||
|
|
||||||
|
eachHtml(
|
||||||
|
".info_img_list .img_list",
|
||||||
|
this.defaultArr,
|
||||||
|
(v) => `<img src="${v}" alt="">`
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
eachHtml(
|
||||||
|
".default-model ul",
|
||||||
|
recommend,
|
||||||
|
(v) => item(v)
|
||||||
|
)
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
event() {
|
||||||
|
|
||||||
|
this.like.filter(v => v.id == query("id")).length != 0
|
||||||
|
? $(".icon-wujiaoxing").addClass("icon-wujiaoxing1")
|
||||||
|
: null
|
||||||
|
|
||||||
|
|
||||||
|
$(".icon-fenxiang").click(async () => {
|
||||||
|
await navigator.clipboard.writeText(`
|
||||||
|
我这有个好看的,快来看看 ${this.title}
|
||||||
|
${location.href}
|
||||||
|
`)
|
||||||
|
alert("内容已复制")
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
$(".icon-wujiaoxing").click(() => {
|
||||||
|
// 如果有icon-wujiaoxing1,表示收藏过了
|
||||||
|
if ($(".icon-wujiaoxing").hasClass("icon-wujiaoxing1")) {
|
||||||
|
this.like = this.like.filter(v => v.id != query("id"))
|
||||||
|
// 没有 icon-wujiaoxing1,表示未收藏过了
|
||||||
|
} else {
|
||||||
|
this.like.push({
|
||||||
|
"id": query("id"),
|
||||||
|
"thumbnail": this.defaultArr[0],
|
||||||
|
"title": this.title,
|
||||||
|
"time": query("time"),
|
||||||
|
"view": "42"
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
localStorage.setItem("like", JSON.stringify(this.like))
|
||||||
|
|
||||||
|
$(".icon-wujiaoxing").toggleClass("icon-wujiaoxing1")
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
$(".view_all").click(() => {
|
||||||
|
$(".img_list").css({ height: 'auto' })
|
||||||
|
eachHtml(
|
||||||
|
".info_img_list .img_list",
|
||||||
|
this.allArr,
|
||||||
|
(v) => `<img src="${v}" alt="">`
|
||||||
|
)
|
||||||
|
$(".view_all").css({ display: 'none' })
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
new Info
|
||||||
6
js/page/me.js
Normal file
6
js/page/me.js
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
class Me {
|
||||||
|
constructor() {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
new Me
|
||||||
76
js/page/search.js
Normal file
76
js/page/search.js
Normal file
@@ -0,0 +1,76 @@
|
|||||||
|
class Search {
|
||||||
|
page = 1;
|
||||||
|
totalPage = 0;
|
||||||
|
keyword = "";
|
||||||
|
constructor() {
|
||||||
|
header(
|
||||||
|
`<input class="flex1" type="text" placeholder="输入关键字">`,
|
||||||
|
`<div class="button">搜索</div>`,
|
||||||
|
`<i class="iconfont icon-fanhui"></i>`
|
||||||
|
)
|
||||||
|
|
||||||
|
this.getSearchHotData()
|
||||||
|
|
||||||
|
this.enevt()
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
async getSearchHotData() {
|
||||||
|
let { hotKeyword, recommend } = await searchServe.searchHot()
|
||||||
|
eachHtml(
|
||||||
|
'.search_list ul',
|
||||||
|
hotKeyword,
|
||||||
|
(v) => `<li><a>${v}</a></li>`
|
||||||
|
)
|
||||||
|
|
||||||
|
$(".search_list ul li").click(function () {
|
||||||
|
$(".header input").val($(this).text())
|
||||||
|
$(".header .button").click()
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
eachHtml(
|
||||||
|
'.search_recommend',
|
||||||
|
recommend,
|
||||||
|
(v) => item(v, 2)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
async getSearchKeyData() {
|
||||||
|
|
||||||
|
let { totalPage, list } = await searchServe.searchKey({
|
||||||
|
keyword: this.keyword,
|
||||||
|
page: this.page
|
||||||
|
})
|
||||||
|
|
||||||
|
this.totalPage = totalPage
|
||||||
|
|
||||||
|
eachHtml(
|
||||||
|
'.have-search ul',
|
||||||
|
list,
|
||||||
|
(v) => item(v)
|
||||||
|
)
|
||||||
|
|
||||||
|
$(".no-search").hide()
|
||||||
|
$(".have-search").show()
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
enevt() {
|
||||||
|
$(".header .button").click(async () => {
|
||||||
|
if ($(".header input").val().length != 0) {
|
||||||
|
this.keyword = $(".header input").val()
|
||||||
|
await this.getSearchKeyData()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
$(".header input").on("input", function () {
|
||||||
|
if ($(".header input").val().length == 0) {
|
||||||
|
$(".no-search").show()
|
||||||
|
$(".have-search").hide()
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
new Search
|
||||||
6
js/page/tagListInfo.js
Normal file
6
js/page/tagListInfo.js
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
class TagListInfo {
|
||||||
|
constructor() {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
new TagListInfo
|
||||||
35
js/serve/home.js
Normal file
35
js/serve/home.js
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
class HomeServe {
|
||||||
|
// data 是接口请求的参数,默认为空对象,表示这个接口不需要参数
|
||||||
|
async homeHot (data = {}) {
|
||||||
|
let http = new Ajax()
|
||||||
|
// suc的返回值(ajax请求到的,后端给我们的数据)
|
||||||
|
return await http.get({
|
||||||
|
url: config.urlList.homeHot,
|
||||||
|
// data: data key 和 value 名字一样的时候,可以直接只写一个
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
async homeBanner (data = {}) {
|
||||||
|
let http = new Ajax()
|
||||||
|
// suc的返回值(ajax请求到的,后端给我们的数据)
|
||||||
|
return await http.get({
|
||||||
|
url: config.urlList.homeBanner,
|
||||||
|
// data: data key 和 value 名字一样的时候,可以直接只写一个
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
async homeList (data = {}) {
|
||||||
|
let http = new Ajax()
|
||||||
|
// suc的返回值(ajax请求到的,后端给我们的数据)
|
||||||
|
return await http.get({
|
||||||
|
url: config.urlList.homeList,
|
||||||
|
// data: data key 和 value 名字一样的时候,可以直接只写一个
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
let homeServe = new HomeServe
|
||||||
14
js/serve/info.js
Normal file
14
js/serve/info.js
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
class InfoServe {
|
||||||
|
// data 是接口请求的参数,默认为空对象,表示这个接口不需要参数
|
||||||
|
async infoList (data = {}) {
|
||||||
|
let http = new Ajax()
|
||||||
|
// suc的返回值(ajax请求到的,后端给我们的数据)
|
||||||
|
return await http.get({
|
||||||
|
url: config.urlList.infoList,
|
||||||
|
// data: data key 和 value 名字一样的时候,可以直接只写一个
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
let infoServe = new InfoServe
|
||||||
28
js/serve/search.js
Normal file
28
js/serve/search.js
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
class SearchServe {
|
||||||
|
// data 是接口请求的参数,默认为空对象,表示这个接口不需要参数
|
||||||
|
async searchHot (data = {}) {
|
||||||
|
let http = new Ajax()
|
||||||
|
// suc的返回值(ajax请求到的,后端给我们的数据)
|
||||||
|
return await http.get({
|
||||||
|
url: config.urlList.searchHot,
|
||||||
|
// data: data key 和 value 名字一样的时候,可以直接只写一个
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
async searchKey (data = {}) {
|
||||||
|
let http = new Ajax()
|
||||||
|
// suc的返回值(ajax请求到的,后端给我们的数据)
|
||||||
|
return await http.get({
|
||||||
|
url: config.urlList.searchKey,
|
||||||
|
// data: data key 和 value 名字一样的时候,可以直接只写一个
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
let searchServe = new SearchServe
|
||||||
43
js/serve/tag.js
Normal file
43
js/serve/tag.js
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
class TagServe {
|
||||||
|
// 简化我们的ajax请求过程
|
||||||
|
// 可以实现对接口返回数据的修改
|
||||||
|
|
||||||
|
// data 是接口请求的参数,默认为空对象,表示这个接口不需要参数
|
||||||
|
async tagList (data = {}) {
|
||||||
|
let http = new Ajax()
|
||||||
|
// suc的返回值(ajax请求到的,后端给我们的数据)
|
||||||
|
let res = await http.get({
|
||||||
|
url: config.urlList.tagList,
|
||||||
|
// data: data key 和 value 名字一样的时候,可以直接只写一个
|
||||||
|
data
|
||||||
|
})
|
||||||
|
res.forEach(v => {
|
||||||
|
v.content = [];
|
||||||
|
v.totalPage = 0;
|
||||||
|
v.page = 1;
|
||||||
|
});
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
async tagInfo (data = {}) {
|
||||||
|
let http = new Ajax()
|
||||||
|
// suc的返回值(ajax请求到的,后端给我们的数据)
|
||||||
|
return await http.get({
|
||||||
|
url: config.urlList.tagInfo,
|
||||||
|
// data: data key 和 value 名字一样的时候,可以直接只写一个
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
async tagRecommend (data = {}) {
|
||||||
|
let http = new Ajax()
|
||||||
|
// suc的返回值(ajax请求到的,后端给我们的数据)
|
||||||
|
return await http.get({
|
||||||
|
url: config.urlList.tagRecommend,
|
||||||
|
// data: data key 和 value 名字一样的时候,可以直接只写一个
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
let tagServe = new TagServe
|
||||||
77
js/utils/index.js
Normal file
77
js/utils/index.js
Normal file
@@ -0,0 +1,77 @@
|
|||||||
|
class Utils {
|
||||||
|
header(content, action, back = `<i class="iconfont icon-fanhui"></i>`) {
|
||||||
|
$("body").prepend(`
|
||||||
|
<div class="header fixed flex ais flex1 border-box p15">
|
||||||
|
${back}
|
||||||
|
${content}
|
||||||
|
${action}
|
||||||
|
</div>
|
||||||
|
`)
|
||||||
|
|
||||||
|
$(".icon-fanhui").click(() => history.back())
|
||||||
|
}
|
||||||
|
|
||||||
|
eachHtml(dom, data, callback) {
|
||||||
|
$(dom).append(
|
||||||
|
data.map((v,i) => callback(v,i))
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
item(v, theme = 1) {
|
||||||
|
return `
|
||||||
|
<li class="${theme == 2 ? 'item-theme-horizontally' : ''}">
|
||||||
|
<a href="./info.html?id=${v.id}&time=${v.time}">
|
||||||
|
<img src="${v.thumbnail}" alt="">
|
||||||
|
<div class="r">
|
||||||
|
<div class="text ellipsis">${v.title}</div>
|
||||||
|
<div class="desc flex ais js">
|
||||||
|
<div class="time">${v.time}</div>
|
||||||
|
<div class="view flex ais">
|
||||||
|
<i class="iconfont icon-yanjing"></i>
|
||||||
|
<span>${v.view}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
`
|
||||||
|
}
|
||||||
|
|
||||||
|
footer() {
|
||||||
|
// ajax 接口返回的底部导航数据
|
||||||
|
let arr = [
|
||||||
|
{ icon: 'icon-shouye', title: '首页', href: 'index.html' },
|
||||||
|
{ icon: 'icon-changchenglogo', title: '分类', href: 'domestic.html' },
|
||||||
|
{ icon: 'icon-hot', title: '热门', href: 'hot.html' },
|
||||||
|
{ icon: 'icon-wo', title: '我的', href: 'me.html' },
|
||||||
|
]
|
||||||
|
|
||||||
|
$("body").append(`
|
||||||
|
<ul class="footer fixed flex ja ais">
|
||||||
|
${arr.map(v => {
|
||||||
|
return `
|
||||||
|
<li class="${location.pathname.includes(v.href) ? 'active' : ''}">
|
||||||
|
<a href="${v.href}">
|
||||||
|
<i class="iconfont ${v.icon}"></i>
|
||||||
|
<p>${v.title}</p>
|
||||||
|
</a>
|
||||||
|
</li>`
|
||||||
|
})}
|
||||||
|
</ul>
|
||||||
|
`)
|
||||||
|
}
|
||||||
|
|
||||||
|
query(name) {
|
||||||
|
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
|
||||||
|
var r = window.location.search.substr(1).match(reg);
|
||||||
|
if (r != null) return decodeURIComponent(r[2]); return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
let u = new Utils
|
||||||
|
let util = u,
|
||||||
|
{
|
||||||
|
header, eachHtml, item,
|
||||||
|
footer, query
|
||||||
|
}
|
||||||
|
= u
|
||||||
10
js/utils/rem.js
Normal file
10
js/utils/rem.js
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
(function (w, d) {
|
||||||
|
function setSize() {
|
||||||
|
var screenWidth = d.documentElement.clientWidth;
|
||||||
|
var currentFontSize = (screenWidth * 100) / 750;
|
||||||
|
d.documentElement.style.fontSize = currentFontSize + "px";
|
||||||
|
}
|
||||||
|
w.addEventListener("resize", setSize);
|
||||||
|
w.addEventListener("pageShow", setSize);
|
||||||
|
w.addEventListener("DOMContentLoaded", setSize);
|
||||||
|
})(window, document);
|
||||||
41
page/domestic.html
Normal file
41
page/domestic.html
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>分类</title>
|
||||||
|
<script src="../js/utils/rem.js"></script>
|
||||||
|
<link rel="stylesheet" href="https://www.jq22.com/demo/jquery.mloading-master201701171922/src/jquery.mloading.css">
|
||||||
|
<link rel="stylesheet" href="https://unpkg.com/swiper@8.4.7/swiper-bundle.min.css">
|
||||||
|
<link rel="stylesheet" href="../css/tool/clear.css">
|
||||||
|
<link rel="stylesheet" href="https://at.alicdn.com/t/c/font_4738996_b8zp7vfi90h.css">
|
||||||
|
<link rel="stylesheet" href="../css/tool/public.css">
|
||||||
|
|
||||||
|
<link rel="stylesheet" href="../css/page/domestic.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="content">
|
||||||
|
<ul class="type_list flex p15 ais"></ul>
|
||||||
|
<div class="swiper type_list_content border-box ">
|
||||||
|
<div class="swiper-wrapper"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
<script src="../js/lib/jquery.min.js"></script>
|
||||||
|
<script src="https://www.jq22.com/demo/jquery.mloading-master201701171922/src/jquery.mloading.js"></script>
|
||||||
|
<script src="../js/lib/swiper-bundle.min.js"> </script>
|
||||||
|
<script src="../js/utils/index.js"></script>
|
||||||
|
<script src="../js/config/index.js"></script>
|
||||||
|
<script src="../js/http/index.js"></script>
|
||||||
|
<script src="../js/serve/tag.js"></script>
|
||||||
|
<script src="../js/page/domestic.js"></script>
|
||||||
|
|
||||||
|
</html>
|
||||||
37
page/hot.html
Normal file
37
page/hot.html
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>Document</title>
|
||||||
|
<script src="../js/utils/rem.js"></script>
|
||||||
|
<link rel="stylesheet" href="../css/tool/clear.css">
|
||||||
|
<link rel="stylesheet" href="https://at.alicdn.com/t/c/font_4738996_raea6u0p92.css">
|
||||||
|
<link rel="stylesheet" href="../css/tool/public.css">
|
||||||
|
|
||||||
|
<link rel="stylesheet" href="../css/page/hot.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="header fixed border-box flex ais js">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="content">
|
||||||
|
热门
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
<script src="../js/utils/index.js"></script>
|
||||||
|
<script src="../js/config/index.js"></script>
|
||||||
|
<script src="../js/http/index.js"></script>
|
||||||
|
<script src="../js/serve/home.js"></script>
|
||||||
|
<script src="../js/serve/info.js"></script>
|
||||||
|
<script src="../js/page/hot.js"></script>
|
||||||
|
|
||||||
|
</html>
|
||||||
67
page/index.html
Normal file
67
page/index.html
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>首页</title>
|
||||||
|
<script src="../js/utils/rem.js"></script>
|
||||||
|
|
||||||
|
<link rel="stylesheet" href="../css/tool/clear.css">
|
||||||
|
<link rel="stylesheet" href="https://www.jq22.com/demo/jquery.mloading-master201701171922/src/jquery.mloading.css">
|
||||||
|
<link rel="stylesheet" href="https://unpkg.com/swiper@8.4.7/swiper-bundle.min.css">
|
||||||
|
<link rel="stylesheet" href="https://at.alicdn.com/t/c/font_4738996_jw564sk4hpk.css">
|
||||||
|
<link rel="stylesheet" href="../css/tool/public.css">
|
||||||
|
<link rel="stylesheet" href="../css/page/index.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="content">
|
||||||
|
|
||||||
|
<div class="swiper banner border-box ">
|
||||||
|
<div class="swiper-wrapper"></div>
|
||||||
|
<!-- 如果需要分页器 -->
|
||||||
|
<div class="swiper-pagination"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<ul class="recommend-tag flex p25"></ul>
|
||||||
|
|
||||||
|
<div class="recommend-model recommend-horizontally">
|
||||||
|
<div class="title p25 flex ais">推荐写真</div>
|
||||||
|
<ul class="flex list p15"></ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="recommend-model default-model">
|
||||||
|
<ul class="flex list p15 js"></ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- <div class="hot p13">
|
||||||
|
<div class="title flex ais">
|
||||||
|
<i class="iconfont icon-hot1"></i>
|
||||||
|
<div class="text">热门标签</div>
|
||||||
|
</div>
|
||||||
|
<ul class="flex wrap">
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div> -->
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
|
||||||
|
<script src="../js/lib/jquery.min.js"></script>
|
||||||
|
<script src="https://www.jq22.com/demo/jquery.mloading-master201701171922/src/jquery.mloading.js"></script>
|
||||||
|
<script src="../js/lib/swiper-bundle.min.js"> </script>
|
||||||
|
<script src="../js/config/index.js"></script>
|
||||||
|
<script src="../js/utils/index.js"></script>
|
||||||
|
<script src="../js/http/index.js"></script>
|
||||||
|
<script src="../js/serve/home.js"></script>
|
||||||
|
<script src="../js/serve/tag.js"></script>
|
||||||
|
<script src="../js/page/index.js"></script>
|
||||||
|
|
||||||
|
</html>
|
||||||
49
page/info.html
Normal file
49
page/info.html
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>Document</title>
|
||||||
|
<script src="../js/utils/rem.js"></script>
|
||||||
|
<link rel="stylesheet" href="https://www.jq22.com/demo/jquery.mloading-master201701171922/src/jquery.mloading.css">
|
||||||
|
<link rel="stylesheet" href="https://at.alicdn.com/t/c/font_4738996_b8zp7vfi90h.css">
|
||||||
|
<link rel="stylesheet" href="../css/tool/clear.css">
|
||||||
|
<link rel="stylesheet" href="../css/tool/public.css">
|
||||||
|
|
||||||
|
<link rel="stylesheet" href="../css/page/info.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="content">
|
||||||
|
<div class="info_img_list relative">
|
||||||
|
<div class="img_list"></div>
|
||||||
|
<div class="view_all flex ais jc absolute">
|
||||||
|
<div>点我展开</div>
|
||||||
|
<i class="iconfont icon-zhankai-copy"></i>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="recommend-model default-model">
|
||||||
|
<div class="title p25 flex ais">推荐写真</div>
|
||||||
|
<ul class="flex list p15"></ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
<script src="../js/lib/jquery.min.js"></script>
|
||||||
|
<script src="https://www.jq22.com/demo/jquery.mloading-master201701171922/src/jquery.mloading.js"></script>
|
||||||
|
<script src="../js/utils/index.js"></script>
|
||||||
|
<script src="../js/config/index.js"></script>
|
||||||
|
<script src="../js/http/index.js"></script>
|
||||||
|
<script src="../js/serve/home.js"></script>
|
||||||
|
<script src="../js/serve/info.js"></script>
|
||||||
|
<script src="../js/page/info.js"></script>
|
||||||
|
|
||||||
|
</html>
|
||||||
36
page/me.html
Normal file
36
page/me.html
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>Document</title>
|
||||||
|
<script src="../js/utils/rem.js"></script>
|
||||||
|
<link rel="stylesheet" href="../css/tool/clear.css">
|
||||||
|
<link rel="stylesheet" href="https://at.alicdn.com/t/c/font_4738996_raea6u0p92.css">
|
||||||
|
<link rel="stylesheet" href="../css/tool/public.css">
|
||||||
|
<link rel="stylesheet" href="../css/page/me.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="header fixed border-box flex ais js">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="content">
|
||||||
|
我的
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
<script src="../js/utils/index.js"></script>
|
||||||
|
<script src="../js/config/index.js"></script>
|
||||||
|
<script src="../js/http/index.js"></script>
|
||||||
|
<script src="../js/serve/home.js"></script>
|
||||||
|
<script src="../js/serve/info.js"></script>
|
||||||
|
<script src="../js/page/me.js"></script>
|
||||||
|
|
||||||
|
</html>
|
||||||
55
page/search.html
Normal file
55
page/search.html
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>Document</title>
|
||||||
|
<script src="../js/utils/rem.js"></script>
|
||||||
|
<link rel="stylesheet" href="../css/tool/clear.css">
|
||||||
|
<link rel="stylesheet" href="https://at.alicdn.com/t/c/font_4738996_l428banw828.css">
|
||||||
|
<link rel="stylesheet" href="https://www.jq22.com/demo/jquery.mloading-master201701171922/src/jquery.mloading.css">
|
||||||
|
<link rel="stylesheet" href="../css/tool/public.css">
|
||||||
|
|
||||||
|
<link rel="stylesheet" href="../css/page/search.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- <div class="header fixed border-box flex ais js p15">
|
||||||
|
<i class="iconfont icon-fanhui"></i>
|
||||||
|
<input class="flex1" type="text" placeholder="输入关键字">
|
||||||
|
<div class="button">搜索</div>
|
||||||
|
</div> -->
|
||||||
|
|
||||||
|
<div class="content">
|
||||||
|
|
||||||
|
<div class="no-search">
|
||||||
|
<div class="search_list">
|
||||||
|
<div class="title flex ais p25">搜索建议</div>
|
||||||
|
<ul class="flex p15 wrap"></ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<ul class="recommend-model search_recommend p25"></ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="have-search recommend-model default-model" style="display: none;">
|
||||||
|
<ul class="flex list p15 js"></ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
<script src="../js/lib/jquery.min.js"></script>
|
||||||
|
<script src="https://www.jq22.com/demo/jquery.mloading-master201701171922/src/jquery.mloading.js"></script>
|
||||||
|
<script src="../js/utils/index.js"></script>
|
||||||
|
<script src="../js/config/index.js"></script>
|
||||||
|
<script src="../js/http/index.js"></script>
|
||||||
|
<script src="../js/serve/search.js"></script>
|
||||||
|
<script src="../js/page/search.js"></script>
|
||||||
|
|
||||||
|
</html>
|
||||||
30
page/tagListInfo.html
Normal file
30
page/tagListInfo.html
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>Document</title>
|
||||||
|
<script src="../js/utils/rem.js"></script>
|
||||||
|
<link rel="stylesheet" href="../css/tool/clear.css">
|
||||||
|
<link rel="stylesheet" href="https://at.alicdn.com/t/c/font_4738996_b8zp7vfi90h.css">
|
||||||
|
<link rel="stylesheet" href="../css/tool/public.css">
|
||||||
|
<link rel="stylesheet" href="../css/page/tagListInfo.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<div class="content">
|
||||||
|
<div class="recommend-model default-model">
|
||||||
|
<ul class="flex list p15 js"></ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
<script src="../js/utils/index.js"></script>
|
||||||
|
<script src="../js/config/index.js"></script>
|
||||||
|
<script src="../js/http/index.js"></script>
|
||||||
|
<script src="../js/serve/tag.js"></script>
|
||||||
|
<script src="../js/page/tagListInfo.js"></script>
|
||||||
|
|
||||||
|
</html>
|
||||||
Reference in New Issue
Block a user