first commit

This commit is contained in:
编码猿
2024-09-27 02:06:13 +08:00
commit 852d94fbb9
36760 changed files with 3274413 additions and 0 deletions

View File

@@ -0,0 +1,50 @@
.left{
padding-left: .8rem;
}
.header{
position: fixed;
top: 0;
left: 0;
right: 0;
z-index: 99;
display: flex;
color: #fff;
height: 2.8rem;
align-items: center;
}
.header a,.header p{
color: #fff;
font-size: .9rem;
}
.header p{
padding-left: .5rem;
}
.contene{
margin-top: 3.5rem;
}
.contene div:first-child p,
.contene div:last-child p{
font-size: .8rem;
margin-bottom: 0.5rem;
color: #666;
}
.contene ul{
display: flex;
flex-wrap: wrap;
}
.contene ul li{
line-height: 2rem;
height: 2rem;
width: 23.8%;
text-align: center;
font-size: 0.28rem;
border: 1px solid #ccc;
margin-bottom: 0.1rem;
padding: 0.1rem 0;
box-sizing: border-box;
margin-right: 0.1rem;
}
.contene div:first-child{
margin-bottom: 1rem;
}

View File

@@ -0,0 +1,77 @@
.header {
height: 1.6rem;
position: fixed;
top: 0;
width: 100%;
left: 0;
z-index: 9;
}
.header_search {
height: 0.88rem;
display: flex;
justify-content: space-between;
padding: 0 0.3rem;
align-items: center;
box-sizing: border-box;
}
.header_menu {
position: relative;
height: 0.72rem;
display: flex;
background: #fe7fa2;
}
.header_menu .menu_list {
display: flex;
width: calc(100% - 0.8rem);
overflow-x: scroll;
align-items: center;
padding-left: 0.3rem;
box-sizing: border-box;
}
.header_menu i {
width: 0.8rem;
height: 0.72rem;
position: absolute;
right: 0;
top: 0;
font-size: 0.3rem;
background: #fe7fa2;
color: #e3e3e3;
line-height: 0.72rem;
text-align: center;
}
.menu_list li {
font-size: 0.26rem;
flex-shrink: 0;
margin-right: 0.26rem;
color: #d3d2d2;
}
.menu_active {
color: #ffffff !important;
}
.content {
margin-top: 1.6rem;
}
.icon-taozi1, .icon-wo{
font-size: 22px;
}
.search {
width: 82%;
background: #fff;
height: 0.6rem;
border-radius: 0.6rem;
display: flex;
align-items: center;
box-sizing: border-box;
padding-left: 0.3rem;
}
.search span {
font-size: 0.24em;
color: #999;
}
.search i {
color: #999;
font-size: 0.26rem;
margin-right: 0.1rem;
padding-top: 0.02rem;
}

View File

@@ -0,0 +1,8 @@
.info {
width: 100%;
}
.info img {
width: 100%;
height: auto;
}

View File

@@ -0,0 +1,37 @@
.content_mechanism {
padding-top: 0.9rem;
padding-bottom: 1rem;
}
.mechanism_list {
display: flex;
flex-wrap: wrap;
margin-top: 0.3rem;
padding: 0 0.3rem;
}
.mechanism_list li {
width: 25%;
text-align: center;
font-size: 0;
margin-bottom: 0.7rem;
}
.mechanism_list p {
font-size: 0.32rem;
margin-bottom: 0.06rem;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.mechanism_list span {
font-size: 0.24rem;
color: #fb7299;
}

View File

@@ -0,0 +1,53 @@
.content_theme1 {
padding-top: 0.9rem;
padding-bottom: 1rem;
}
.padding_30 {
padding: 0.3rem 0.3rem 0 0.3rem;
}
.item_list .title {
font-size: 0.34rem;
color: #333;
margin-bottom: 0.26rem;
margin-top: 0.3rem;
}
.model_list {
display: flex;
justify-content: space-around;
margin-top: 0.24rem;
flex-wrap: wrap;
}
.model_list .item {
margin-bottom: 0.6rem;
}
.item {
position: relative;
text-align: center;
width: 22%;
}
.top {
position: relative;
}
.item span {
font-size: 0.22rem;
position: absolute;
left: 50%;
transform: translateX(-50%);
bottom: 0.06rem;
padding: 0.02rem 0.1rem;
background: rgb(0 0 0 / 58%);
color: #fff;
border-radius: 0.2rem;
}
.item img {
width: 1.2rem;
height: 1.2rem;
border-radius: 100%;
}
.item p {
font-size: 0.24rem;
color: #7e7979;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}

View File

@@ -0,0 +1,121 @@
.content_info {
padding-top: 0.9rem;
}
.model_info_header {
display: flex;
justify-content: flex-start;
align-items: center;
font-size: 0;
}
.model_info_header img{
width: 1.4rem;
height: 1.4rem;
margin-right: 0.2rem;
border-radius: 100%;
}
.right_text {
flex: 1;
}
.right_text p{
font-weight: 500;
font-size: 0.32rem;
margin-bottom: 0.12rem;
}
.right_text span{
font-size: 0.24rem;
color: #909090;
}
.padding_30 {
padding: 0.3rem 0.3rem 0 0.3rem;
}
.item_list .title {
font-size: 0.34rem;
color: #333;
margin-bottom: 0.26rem;
margin-top: 0.3rem;
}
.item_list ul {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}
.item_list ul li {
width: 48%;
margin-bottom: 0.3rem;
}
.item_list ul .newest_img {
position: relative;
}
a {
text-decoration: none;
color: #000;
-webkit-tap-highlight-color: rgba(255, 255, 255, 0);
}
.item_list .newest_img span {
position: absolute;
padding: 0.08rem 0.14rem;
background: rgb(251 114 153 / 73%);
color: rgb(255 255 255 / 73%);
font-size: 0.24rem;
right: 0.2rem;
bottom: 0.42rem;
border-radius: 0.28rem;
}
.newest_text .tags {
display: flex;
flex-wrap: wrap;
margin-top: 0.08rem;
}
.newest_text .tags_item {
padding: 0.04rem 0.1rem;
font-size: 0.24rem;
background: #fb7299;
margin-right: 0.06rem;
color: #fff;
border-radius: 0.18rem;
margin-bottom: 0.06rem;
}
.tags_item a {
color: #fff;
}
.model_list {
display: flex;
justify-content: space-around;
margin-top: 0.24rem;
flex-wrap: wrap;
}
.model_list .item {
margin-bottom: 0.6rem;
}
.item {
position: relative;
text-align: center;
width: 22%;
}
.top {
position: relative;
}
.item p {
font-size: 0.24rem;
color: #7e7979;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.item img {
width: 1.2rem;
height: 1.2rem;
border-radius: 100%;
}
.item span {
font-size: 0.22rem;
position: absolute;
left: 50%;
transform: translateX(-50%);
bottom: 0.06rem;
padding: 0.02rem 0.1rem;
background: rgb(0 0 0 / 58%);
color: #fff;
border-radius: 0.2rem;
}

View File

@@ -0,0 +1,53 @@
.comms{
padding: 0 1rem;
}
.header{
padding: 0 1rem;
position: fixed;
top: 0;
left: 0;
right: 0;
z-index: 99;
height: 2.7rem;
}
.header input{
width: 83%;
border: none;
outline: none;
height: 1.9rem;
padding-left: 0.5rem;
border-radius: 1rem;
box-sizing: border-box;
font-size: 0.26rem;
background-color: #fff;
color: #333;
}
.coontent{
margin-top: 3.5rem;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.coontent a{
margin-bottom: .5rem;
width: 10rem;
}
.coontent img{
width: 10rem;
border-radius: .5rem;
}
.coontent p{
width: 100%;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
p{
margin-top: 2rem;
font-size: 1rem;
color: #666;
display: flex;
justify-content: center;
}

View File

@@ -0,0 +1,14 @@
body,ul,li,h1,h2,h3,h4,h5,h6,p {
list-style: none;
margin: 0;
padding: 0;
}
a {
text-decoration: none;
}
input {
outline: none;
border: none;
}

View File

@@ -0,0 +1,145 @@
body {
background-color: #FFFFFF;
}
.padding_30 {
padding: 0.3rem 0.3rem 0 0.3rem;
}
/*头部公共样式*/
.header_theme1 {
position: fixed;
width: 100%;
height: 0.9rem;
left: 0;
top: 0;
display: flex;
align-items: center;
padding: 0 0.3rem;
box-sizing: border-box;
z-index: 999;
justify-content: space-between;
font-size: 18px;
}
.header_theme1 i {
font-size: 18px;
color: #fff;
margin-right: 0.1rem;
}
.header_theme1 span {
color: #fff;
font-size: 0.32rem;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.theme_color {
background: #fb7299;
}
.color_white {
color: white;
}
/*内容*/
.content_info {
padding-top: 0.9rem;
}
.item_list ul {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}
.item_list ul li {
width: 48%;
margin-bottom: 0.3rem;
}
.item_list ul .newest_img {
position: relative;
}
.item_list .newest_img span {
position: absolute;
padding: 0.08rem 0.14rem;
background: rgb(251 114 153 / 73%);
color: rgb(255 255 255 / 73%);
font-size: 0.24rem;
right: 0.2rem;
bottom: 0.2rem;
border-radius: 0.28rem;
}
.item_list .newest_img img {
width: 100%;
border-radius: 0.1rem;
}
.newest_text .tags {
display: flex;
flex-wrap: wrap;
margin-top: 0.08rem;
}
.newest_text .tags_item {
padding: 0.04rem 0.1rem;
font-size: 0.24rem;
background: #fb7299;
margin-right: 0.06rem;
color: #fff;
border-radius: 0.18rem;
margin-bottom: 0.06rem;
}
.item_list .newest_text .t {
color: #333;
font-size: 0.3rem;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
margin-bottom: 0.08rem;
}
.tags_item a {
color: #fff;
}
/*详情页*/
.content_info {
padding-top: 0.9rem;
}
/*尾部公共样式*/
.footer {
position: fixed;
width: 100%;
background: #fff;
height: 1rem;
bottom: 0;
display: flex;
justify-content: space-around;
align-items: center;
border-top: 0.02rem solid #e8ebec;
box-sizing: border-box;
padding-top: 0.1rem;
}
.footer li a {
display: flex;
flex-direction: column;
text-align: center;
}
.footer li i {
font-size: 0.3rem;
margin-bottom: 0.08rem;
}
.footer li span {
font-size: 0.24rem;
}

View File

@@ -0,0 +1,546 @@
/**
* Swiper 6.4.14
* Most modern mobile touch slider and framework with hardware accelerated transitions
* https://swiperjs.com
*
* Copyright 2014-2021 Vladimir Kharlampidi
*
* Released under the MIT License
*
* Released on: February 17, 2021
*/
@font-face {
font-family: 'swiper-icons';
src: url('data:application/font-woff;charset=utf-8;base64, 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') format('woff');
font-weight: 400;
font-style: normal;
}
:root {
--swiper-theme-color: #007aff;
}
.swiper-container {
margin-left: auto;
margin-right: auto;
position: relative;
overflow: hidden;
list-style: none;
padding: 0;
/* Fix of Webkit flickering */
z-index: 1;
}
.swiper-container-vertical > .swiper-wrapper {
flex-direction: column;
}
.swiper-wrapper {
position: relative;
width: 100%;
height: 100%;
z-index: 1;
display: flex;
transition-property: transform;
box-sizing: content-box;
}
.swiper-container-android .swiper-slide,
.swiper-wrapper {
transform: translate3d(0px, 0, 0);
}
.swiper-container-multirow > .swiper-wrapper {
flex-wrap: wrap;
}
.swiper-container-multirow-column > .swiper-wrapper {
flex-wrap: wrap;
flex-direction: column;
}
.swiper-container-free-mode > .swiper-wrapper {
transition-timing-function: ease-out;
margin: 0 auto;
}
.swiper-container-pointer-events {
touch-action: pan-y;
}
.swiper-container-pointer-events.swiper-container-vertical {
touch-action: pan-x;
}
.swiper-slide {
flex-shrink: 0;
width: 100%;
height: 100%;
position: relative;
transition-property: transform;
}
.swiper-slide-invisible-blank {
visibility: hidden;
}
/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
height: auto;
}
.swiper-container-autoheight .swiper-wrapper {
align-items: flex-start;
transition-property: transform, height;
}
/* 3D Effects */
.swiper-container-3d {
perspective: 1200px;
}
.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
transform-style: preserve-3d;
}
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
pointer-events: none;
z-index: 10;
}
.swiper-container-3d .swiper-slide-shadow-left {
background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-right {
background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-top {
background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-bottom {
background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
/* CSS Mode */
.swiper-container-css-mode > .swiper-wrapper {
overflow: auto;
scrollbar-width: none;
/* For Firefox */
-ms-overflow-style: none;
/* For Internet Explorer and Edge */
}
.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {
display: none;
}
.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {
scroll-snap-align: start start;
}
.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {
scroll-snap-type: x mandatory;
}
.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {
scroll-snap-type: y mandatory;
}
:root {
--swiper-navigation-size: 44px;
/*
--swiper-navigation-color: var(--swiper-theme-color);
*/
}
.swiper-button-prev,
.swiper-button-next {
position: absolute;
top: 50%;
width: calc(var(--swiper-navigation-size) / 44 * 27);
height: var(--swiper-navigation-size);
margin-top: calc(-1 * var(--swiper-navigation-size) / 2);
z-index: 10;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
color: var(--swiper-navigation-color, var(--swiper-theme-color));
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
opacity: 0.35;
cursor: auto;
pointer-events: none;
}
.swiper-button-prev:after,
.swiper-button-next:after {
font-family: swiper-icons;
font-size: var(--swiper-navigation-size);
text-transform: none !important;
letter-spacing: 0;
text-transform: none;
font-variant: initial;
line-height: 1;
}
.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
left: 10px;
right: auto;
}
.swiper-button-prev:after,
.swiper-container-rtl .swiper-button-next:after {
content: 'prev';
}
.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
right: 10px;
left: auto;
}
.swiper-button-next:after,
.swiper-container-rtl .swiper-button-prev:after {
content: 'next';
}
.swiper-button-prev.swiper-button-white,
.swiper-button-next.swiper-button-white {
--swiper-navigation-color: #ffffff;
}
.swiper-button-prev.swiper-button-black,
.swiper-button-next.swiper-button-black {
--swiper-navigation-color: #000000;
}
.swiper-button-lock {
display: none;
}
:root {
/*
--swiper-pagination-color: var(--swiper-theme-color);
*/
}
.swiper-pagination {
position: absolute;
text-align: center;
transition: 300ms opacity;
transform: translate3d(0, 0, 0);
z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden {
opacity: 0;
}
/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
bottom: 10px;
left: 0;
width: 100%;
}
/* Bullets */
.swiper-pagination-bullets-dynamic {
overflow: hidden;
font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
transform: scale(0.33);
position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
transform: scale(0.33);
}
.swiper-pagination-bullet {
width: 8px;
height: 8px;
display: inline-block;
border-radius: 50%;
background: #000;
opacity: 0.2;
}
button.swiper-pagination-bullet {
border: none;
margin: 0;
padding: 0;
box-shadow: none;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
cursor: pointer;
}
.swiper-pagination-bullet-active {
opacity: 1;
background: var(--swiper-pagination-color, var(--swiper-theme-color));
}
.swiper-container-vertical > .swiper-pagination-bullets {
right: 10px;
top: 50%;
transform: translate3d(0px, -50%, 0);
}
.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
margin: 6px 0;
display: block;
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
top: 50%;
transform: translateY(-50%);
width: 8px;
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
display: inline-block;
transition: 200ms transform, 200ms top;
}
.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
margin: 0 4px;
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
left: 50%;
transform: translateX(-50%);
white-space: nowrap;
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
transition: 200ms transform, 200ms left;
}
.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
transition: 200ms transform, 200ms right;
}
/* Progress */
.swiper-pagination-progressbar {
background: rgba(0, 0, 0, 0.25);
position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
background: var(--swiper-pagination-color, var(--swiper-theme-color));
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
transform: scale(0);
transform-origin: left top;
}
.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
transform-origin: right top;
}
.swiper-container-horizontal > .swiper-pagination-progressbar,
.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
width: 100%;
height: 4px;
left: 0;
top: 0;
}
.swiper-container-vertical > .swiper-pagination-progressbar,
.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
width: 4px;
height: 100%;
left: 0;
top: 0;
}
.swiper-pagination-white {
--swiper-pagination-color: #ffffff;
}
.swiper-pagination-black {
--swiper-pagination-color: #000000;
}
.swiper-pagination-lock {
display: none;
}
/* Scrollbar */
.swiper-scrollbar {
border-radius: 10px;
position: relative;
-ms-touch-action: none;
background: rgba(0, 0, 0, 0.1);
}
.swiper-container-horizontal > .swiper-scrollbar {
position: absolute;
left: 1%;
bottom: 3px;
z-index: 50;
height: 5px;
width: 98%;
}
.swiper-container-vertical > .swiper-scrollbar {
position: absolute;
right: 3px;
top: 1%;
z-index: 50;
width: 5px;
height: 98%;
}
.swiper-scrollbar-drag {
height: 100%;
width: 100%;
position: relative;
background: rgba(0, 0, 0, 0.5);
border-radius: 10px;
left: 0;
top: 0;
}
.swiper-scrollbar-cursor-drag {
cursor: move;
}
.swiper-scrollbar-lock {
display: none;
}
.swiper-zoom-container {
width: 100%;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
text-align: center;
}
.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
max-width: 100%;
max-height: 100%;
object-fit: contain;
}
.swiper-slide-zoomed {
cursor: move;
}
/* Preloader */
:root {
/*
--swiper-preloader-color: var(--swiper-theme-color);
*/
}
.swiper-lazy-preloader {
width: 42px;
height: 42px;
position: absolute;
left: 50%;
top: 50%;
margin-left: -21px;
margin-top: -21px;
z-index: 10;
transform-origin: 50%;
animation: swiper-preloader-spin 1s infinite linear;
box-sizing: border-box;
border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
border-radius: 50%;
border-top-color: transparent;
}
.swiper-lazy-preloader-white {
--swiper-preloader-color: #fff;
}
.swiper-lazy-preloader-black {
--swiper-preloader-color: #000;
}
@keyframes swiper-preloader-spin {
100% {
transform: rotate(360deg);
}
}
/* a11y */
.swiper-container .swiper-notification {
position: absolute;
left: 0;
top: 0;
pointer-events: none;
opacity: 0;
z-index: -1000;
}
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
transition-timing-function: ease-out;
}
.swiper-container-fade .swiper-slide {
pointer-events: none;
transition-property: opacity;
}
.swiper-container-fade .swiper-slide .swiper-slide {
pointer-events: none;
}
.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
pointer-events: auto;
}
.swiper-container-cube {
overflow: visible;
}
.swiper-container-cube .swiper-slide {
pointer-events: none;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
z-index: 1;
visibility: hidden;
transform-origin: 0 0;
width: 100%;
height: 100%;
}
.swiper-container-cube .swiper-slide .swiper-slide {
pointer-events: none;
}
.swiper-container-cube.swiper-container-rtl .swiper-slide {
transform-origin: 100% 0;
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
pointer-events: auto;
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next + .swiper-slide {
pointer-events: auto;
visibility: visible;
}
.swiper-container-cube .swiper-slide-shadow-top,
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right {
z-index: 0;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
}
.swiper-container-cube .swiper-cube-shadow {
position: absolute;
left: 0;
bottom: 0px;
width: 100%;
height: 100%;
opacity: 0.6;
z-index: 0;
}
.swiper-container-cube .swiper-cube-shadow:before {
content: '';
background: #000;
position: absolute;
left: 0;
top: 0;
bottom: 0;
right: 0;
-webkit-filter: blur(50px);
filter: blur(50px);
}
.swiper-container-flip {
overflow: visible;
}
.swiper-container-flip .swiper-slide {
pointer-events: none;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
z-index: 1;
}
.swiper-container-flip .swiper-slide .swiper-slide {
pointer-events: none;
}
.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
pointer-events: auto;
}
.swiper-container-flip .swiper-slide-shadow-top,
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right {
z-index: 0;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
}

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,2 @@
/*! YDUI Touch v0.0.1 by YDCSS (c) 2017 Licensed MIT */
!function(e){var t=750,n=e.document,i=n.documentElement,a="orientationchange"in e?"orientationchange":"resize",d=function o(){var e=i.getBoundingClientRect().width;return i.style.fontSize=5*Math.max(Math.min(20*(e/t),11.2),8.55)+"px",o}();i.setAttribute("data-dpr",e.navigator.appVersion.match(/iphone/gi)?e.devicePixelRatio:1),/iP(hone|od|ad)/.test(e.navigator.userAgent)&&(n.documentElement.classList.add("ios"),parseInt(e.navigator.appVersion.match(/OS (\d+)_(\d+)_?(\d+)?/)[1],10)>=8&&n.documentElement.classList.add("hairline")),n.addEventListener&&(e.addEventListener(a,d,!1),n.addEventListener("DOMContentLoaded",d,!1))}(window);

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,32 @@
var config = {
environment: 'prod', // 当前项目所属的开发环境 dev,test,prod
baseUrl () {
switch (config.environment) {
case "dev":
return config.devbasrUrl;
break;
case "test":
return config.testbasrUrl;
break;
case "prod":
return config.prodbasrUrl;
break;
}
},
devbasrUrl: 'http://127.0.0.1:3000/api/json', // dev 开发阶段
testbasrUrl: 'http://127.0.0.1:3000/test', // test 测试阶段
prodbasrUrl: 'http://47.114.153.249:3000/api/json', // prod 正式阶段
apiList: {
index: '/index', // 获取首页数据,
info: '/info', // 进入详情
type: '/class', // 获取分类接口
mechanism:'/mechanism', // 获取机构接口
mechanismList: '/mechanismList', //获取机构详情接口
search: '/search', // 搜索接口
allModel: '/allModel', // 所有模特
modelList: '/modelList', // 进入模特的个人主页
}
}

View File

@@ -0,0 +1,53 @@
class Api {
constructor() {
this.baseUrl = config.baseUrl();
}
get(option) {
YDUI.dialog.loading.open('很快加载好了');
return new Promise((resolve,reject) => {
$.ajax({
type: "GET",
url: this.baseUrl + option.url,
data: option.data,
success: (res) => {
this.checkStatus(resolve,res)
},
error: (err) => {
reject(err)
}
});
})
}
post(option) {
return new Promise((resolve,reject) => {
$.ajax({
type: "POST",
url: this.baseUrl + option.url,
data: option.data,
success: (res) => {
this.checkStatus(resolve,res)
},
error: (err) => {
reject(err)
}
});
})
}
checkStatus(resolve,res) {
YDUI.dialog.loading.close();
switch (res.status) {
case 200:
resolve(res.result);
break;
case 500:
throw new Error(res.msg);
break;
}
}
}

View File

@@ -0,0 +1,88 @@
class Cation {
constructor() {
this.getCation();
// 这里的俩个数组不能直接为空数组,不然刷新之后就会被立即置空,应该是从本地里面动态的读出来的
this.topList = localStorage.getItem('type')==null?[]:JSON.parse(localStorage.getItem('type'));
this.bottomList = localStorage.getItem('bottom_type')==null?[]:JSON.parse(localStorage.getItem('bottom_type'));
}
getCation() {
//吧type里面的值赋值给空数组topList
this.topList = JSON.parse(localStorage.getItem('type'));
console.log(this.topList);
// 遍历,渲染进上面的页面
$('.top_li').html('');
$(this.topList).each((index,item) => {
$('.top_li').append(`<li>${item.title}</li>`);
})
//调用onclick函数
this.onclick();
//jq情况网页元素使用html
$('.bottom_li').html('');
//从localStorage取出来赋值
this.bottomList=JSON.parse(localStorage.getItem('bottom_type'));
//遍历渲染
$(this.bottomList).each((index,item)=>{
$('.bottom_li').append(`<li>${item.title}</li>`)
})
console.log(this.bottomList);
this.bottomLick();
}
// 点击事件函数
onclick() {
//拿到上面页面的li
$('.top_li li').each((index,item) => {
// 注册点击事件
$(item).click(()=>{
//点谁就把谁追加近bottomList
this.bottomList.push(JSON.parse(localStorage.getItem('type'))[index]);
//存入localStorage
localStorage.setItem('bottom_type',JSON.stringify(this.bottomList))
//过滤好的值查询赋值给res
let res = JSON.parse(localStorage.getItem('type')).filter((i, j) => {
//i。id就是所有的值,JSON.parse(localStorage.getItem('type'))[index].id)是我们点击时的当前值
//这句话的意思就是点击谁就把其他返回出去,点击的过滤掉
if (i.id != JSON.parse(localStorage.getItem('type'))[index].id) {
return i;
}
});
// 然后存入localStorage中,记得使用JSON.stringify()转换
localStorage.setItem('type',JSON.stringify(res));
// 在重新调用上面的方法,遍历渲染进页面,就完成了点谁去除谁的骚操作了
this.getCation();
})
})
}
bottomLick(){
$('.bottom_li li').each((j,i)=>{
$(i).click(()=>{
this.topList.push(JSON.parse(localStorage.getItem('bottom_type'))[j]);
localStorage.setItem('type',JSON.stringify(this.topList))
let msg= JSON.parse(localStorage.getItem('bottom_type')).filter((x,y)=>{
if(x.id != JSON.parse(localStorage.getItem('bottom_type'))[j].id){
return x;
}
});
localStorage.setItem('bottom_type',JSON.stringify(msg));
this.getCation();
})
})
}
}
new Cation();

View File

@@ -0,0 +1,87 @@
class Index {
constructor() {
this.home();
this.getType()
this.initSwiper();
this.initHome();
}
async getType() {
var res = {};
if (localStorage.getItem("type") == null) {
res = await indexService.type();
res.principal.unshift({
id: -1,
page: 0,
title: "首页"
})
localStorage.setItem("type",JSON.stringify(res.principal));
}
res = JSON.parse(localStorage.getItem("type"))
res.forEach((v,i)=> {
$(".menu_list").append(`
<li class="${i == 0 ? 'menu_active' : ''}">${v.title}</li>
`)
});
res.forEach((v,i)=> {
if (i > 0) {
$(".swiper-wrapper").append(`
<div class="swiper-slide">
<h2>${v.title}</h2>
</div>
`)
}
})
console.log(res)
}
async home () {
var res = await indexService.home();
// $(".a").append(item(res.newest.data))
// $(".b").append(item(res.model.data))
console.log()
console.log(res)
}
initHome() {
new Swiper ('#modelSwiper', {
direction: 'horizontal',
// 如果需要分页器
pagination: {
el: '.modelPagination',
},
});
}
initSwiper () {
var mySwiper = new Swiper ('#pageSwiper', {
direction: 'horizontal',
on: {
slideChangeTransitionEnd: function(){
$(".menu_list li").eq(this.activeIndex)
.addClass("menu_active").siblings().removeClass("menu_active")
},
},
});
$(".menu_list li").click(function () {
$(this).addClass("menu_active").siblings().removeClass("menu_active");
mySwiper.slideTo($(this).index(),300)
})
}
}
new Index();

View File

@@ -0,0 +1,110 @@
class infoget {
constructor() {
this.likeList
= localStorage.getItem("list") == null
? []
: JSON.parse(localStorage.getItem("list"));
this.currentifo = {},
this.infoSevice()
}
async infoSevice () {
var res = await infoSevice.infoSevice({
page:1,
id:GetUrlParam("id"),
t:GetUrlParam("name"),
});
this.currentifo = res
$(".action").append(`
<a onclick=window.history.go(-1)> <i class="iconfont icon-back1"></i></a>
<span>写真集详情</span>
`)
res.data.forEach((v) =>{
$(".info").append(`
<figure>
<a href="" data-size="1800x2700">
<img src="${v.src}"
alt="${v.title}">
</a>
</figure>
`)
})
this.like();
}
like() {
var isHave = this.likeList.filter((items,index) => {
// console.log(items)
if (item.data != this.currentifo.data) {
// console.log(this.currentifo.data[0].title)
return items
}
});
isHave.forEach((v,i)=>{
console.log(v.title)
console.log(this.currentifo.data[i].title)
if (v.title = this.currentifo.data[i].title) {
$(".likeicon").removeClass("icon-xin").addClass("icon-aixin");
}
})
// 切换收藏 与 取消收藏
$('.likeicon').on('click', () =>{
// console.log(this.currentifo)
if ($(".likeicon").hasClass("icon-xin")) {
$(".likeicon").removeClass("icon-xin ").addClass("icon-aixin");
this.likeList.push(this.currentifo)
// console.log(this.likeList)
localStorage.setItem("list", JSON.stringify(this.likeList))
} else {
$(".likeicon").removeClass("icon-aixin ").addClass("icon-xin");
this.likeList = this.likeList.filter((item,index) => {
// console.log("item.data",item.data)
// console.log("this.currentifo.data",this.currentifo.data)
if (item.data !== this.currentifo.data) {
return item
}
// console.log(item)
});
localStorage.setItem("list", JSON.stringify(this.likeList))
}
})
}
}
function GetUrlParam(paraName) {
var url = document.location.toString();
var arrObj = url.split("?");
if (arrObj.length > 1) {
var arrPara = arrObj[1].split("&");
var arr;
for (var i = 0; i < arrPara.length; i++) {
arr = arrPara[i].split("=");
if (arr != null && arr[0] == paraName) {
return arr[1];
}
}
return "";
}
else {
return "";
}
}
new infoget();

View File

@@ -0,0 +1,29 @@
class Mechanism {
constructor() {
this.mechanism()
}
async mechanism () {
var res = await mechanismService.mechanism();
console.log(res)
for (let index in res) {
// console.log(index)
// console.log(res[index])
// console.log(res[index].title)
$(".mechanism_list").append(
`
<li>
<a href="./mechanism_info.html?id=${res[index].id}&t=${res[index].title}&type=mechanism">
<p>${res[index].title}</p>
<span>${res[index].quantity}</span>
</a>
</li>
`
)
}
}
}
new Mechanism();

View File

@@ -0,0 +1,37 @@
class MechanismList {
constructor() {
this.mechanList()
// console.log(window.top.document.URL)
}
async mechanList () {
var res = await mechInfoService.mechanismList({
page:0,
id:`${urlId}`
});
console.log(res)
$(".jg_list ul").append(item(res.data))
$(".action").append(`
<i class="iconfont icon-back1"></ihre>
<span>${unit_title}</span>
`)
}
}
var url = document.location.toString();//获取url地址
var urlParmStr = url.slice(url.indexOf('?')+1);//获取问号后所有的字符串
var arr = urlParmStr.split('&');//通过&符号将字符串分割转成数组
var urlId = arr[0].split("=")[1];//获取数组中第一个参数
var unit_title=arr[1].split("=")[1];//第二个参数
unit_title=decodeURI(unit_title);//转码将解码方式unscape换为decodeURI,将中文参数获取
console.log(unit_title)
new MechanismList();

View File

@@ -0,0 +1,59 @@
class Model {
constructor() {
this.GetModelList({});
this.newModelList = []
}
async GetModelList() {
var res = await modelService.Model();
console.log(res);
var hot_models = res.hot_models;
var newest = res.newest;
this.newModelList = [...hot_models, ...newest]
this.RenderModelItem(hot_models, '.hot_models')
this.RenderModelItem(newest, '.newest')
}
RenderModelItem(data, className) {
if (className == ".hot_models") {
$(`${className} .title`).text('热门模特')
} else {
$(`${className} .title`).text('最新模特')
}
data.forEach(v => {
$(`${className} .model_list`).append(
`
<div class="item">
<div class="top">
<img src="${v.preview}" alt="${v.title}">
${
v.total.length == 0
? ''
: `<span>${v.total}</span>`
}
</div>
<p>${v.title}</p>
</div>
`
)
this.BindItemClick();
});
}
BindItemClick() {
var Item = document.querySelectorAll(".item");
Item.forEach((v,i)=>{
v.onclick = () => {
location.href = `model_info.html?id=${this.newModelList[i].id}&t=${this.newModelList[i].title}`
}
})
}
}
new Model();

View File

@@ -0,0 +1,95 @@
class Model_infoList{
constructor() {
this.GetModel_Info();
}
async GetModel_Info() {
var res = await model_InfoService.ModelList({
page:0,
id:`${urlId}`
}
);
console.log(res)
$(".action").append(`
<i class="iconfont icon-back1"></i>
<span>${res.model_info.name}</span>
`)
$(".model_info_header").append(
`
<img src="${res.model_info.portrait}" alt="${res.model_info.name}">
<div class="right_text">
<p>${res.model_info.name}</p>
<span>${res.model_info.explain}</span>
</div>
`
)
// 遍历模特的作品
$(".tazuop .title").text('她的作品')
res.data.forEach(v => {
$(".tazuop ul").append(
`
<li>
<div class="newest_img">
<a href="./info.html?id=${v.id}">
<img src="${v.preview}" alt="${v.title}">
</a>
<span>${v.total}P</span>
</div>
<div class="newest_text">
<a href="./info.html?id=${v.id}">
<p class="t">${v.title}</p>
<p class="source">${v.source}</p>
</a>
<div class="tags">
${
(v.tags.map((t) => {
return `<div class="tags_item"><a href="./mechanism_info.html?id=${t.id}&type=tags&t=${t.title}">${t.title}</a></div>`
})).toString().replace(/,/ig, " ")
}
</div>
</div>
</li>
`
)
});
// 遍历类似模特
$(".similar .title").text('类似模特')
res.similar.forEach((v)=>{
$(".similar .model_list").append(
`
<div class="item">
<div class="top">
<img src="${v.preview}" alt="${v.title}">
<span>${v.total}</span>
</div>
<p>${v.title}</p>
</div>
`
)
})
var items = document.querySelectorAll(".similar .model_list .item")
items.forEach((v,i)=>{
v.onclick = function () {
location.href = `model_info.html?id=${res.similar[i].id}&t=${res.similar[i].title}`
}
})
}
}
var url = document.location.toString();//获取url地址
var urlParmStr = url.slice(url.indexOf('?')+1);//获取问号后所有的字符串
var arr = urlParmStr.split('&');//通过&符号将字符串分割转成数组
var urlId = arr[0].split("=")[1];//获取数组中第一个参数
var unit_title=arr[1].split("=")[1];//第二个参数
new Model_infoList();

View File

@@ -0,0 +1,70 @@
class Search {
constructor() {
this.getSearch();
//判断标准位
this.coke = true;
}
async getSearch() {
//输入框注册点击事件
$('input').on('input', () => {
//输入框的内容发生改变就为true
this.coke = true;
//判断输入框里面的value值是否为空,为空就情况页面
if ($('input').val()) {
$('.coontent').html('');
}
})
//输入框注册点击事件
$('.icon-search').on('click', async () => {
//判断输入框value值是否为0,不为0执行下面条件,为0不执行下面条件
if ($('input').val().length != 0) {
if (this.coke) {
//先置空
$('.coontent').html('');
var res = await indexService.search({
keyword: $('input').val(),
page: this.page
});
//标志位
this.coke=false;
//遍历,渲染页面
$(res).each((index,item) => {
$('.coontent').append(`
<a href="./info.html?id=${item.id}">
<img src="${item.preview}" alt="">
<p>${item.title}</p>
</a>
`)
});
console.log(res.length);
//res。length是用户搜索内容,返回的内容长度,等于0就说明没有搜索到内容
if (res.length == 0) {
$('.coontent').append(`<p>没有关于这方面的奇怪内容哦</p>`);
}
}
}
})
}
}
new Search();
// 思考?重复点击会一直发送请求,改如何取消重复发送请求?
// 办法:设置一个标准位,默认为true,为true可以点击搜索,
// 搜索完毕不管结果怎么样,吧标准位改为false,当用户输入内容发送改变(使用oninput事件监听输入框的值是否发送改变)的时候再把标准位改为true

View File

@@ -0,0 +1,40 @@
class IndexService {
constructor() { }
async home(data = {}) {
var api = new Api();
var res = await api.get({
url: config.apiList.index,
data: data
});
api = null;
return res;
}
async type(data = {}) {
var api = new Api();
var res = await api.get({
url: config.apiList.type,
data: data
});
api = null;
return res;
}
// 搜索接口
async search(data = {}) {
var api = new Api();
var res = await api.get({
url: config.apiList.search,
data: data
});
api = null;
return res;
}
}
var indexService = new IndexService();

View File

@@ -0,0 +1,20 @@
class InfoSevice{
constructor() {}
async infoSevice(data = {}) {
var api = new Api();
var res = await api.get({
url: config.apiList.info,
data: data
});
api = null;
return res;
}
}
var infoSevice = new InfoSevice();

View File

@@ -0,0 +1,23 @@
class MechInfoService {
constructor() {
}
async mechanismList(data = {}) {
var api = new Api();
var res = await api.get({
url: config.apiList.mechanismList,
data: data
});
api = null;
return res;
}
}
var mechInfoService = new MechInfoService();

View File

@@ -0,0 +1,20 @@
class MechanismService {
constructor() {}
async mechanism(data = {}) {
var api = new Api();
var res = await api.get({
url: config.apiList.mechanism,
data: data
});
api = null;
return res;
}
}
var mechanismService = new MechanismService();

View File

@@ -0,0 +1,17 @@
class ModelService {
constructor() {
}
async Model (data = {}) {
var api = new Api();
var res = await api.get({
url: config.apiList.allModel,
data: data
});
api = null;
return res;
}
}
var modelService = new ModelService();

View File

@@ -0,0 +1,17 @@
class Model_infoService {
constructor() {
}
async ModelList (data = {}) {
var api = new Api();
var res = await api.get({
url: config.apiList.modelList,
data: data
});
api = null;
return res;
}
}
var model_InfoService = new Model_infoService();

View File

@@ -0,0 +1,25 @@
class TypeService {
constructor() {}
async leftMenu(data = {}) {
var api = new Api();
return await api.get({
url: config.apiList.leftMenu,
data: data
});
api = null;
}
async rightMenu(data = {}) {
var api = new Api();
return await api.get({
url: config.apiList.rightMenu,
data: data
});
api = null;
}
}
var typeService = new TypeService();

View File

@@ -0,0 +1,45 @@
function query(name) {
const reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
const r = window.location.search.substr(1).match(reg);
if(r!=null)return unescape(r[2]); return null;
}
function item (arr) {
var html = "";
arr.forEach((v, i) => {
html += `
<a href="./page/info.html?id={v,id}">
<li>
<div class="newest_img">
<a href="./info.html?id=${v.id}">
<!--图片地址-->
<img src="${v.preview || v.img}" alt="${v.title}">
</a>
<span>${v.total}套</span>
</div>
<div class="newest_text">
<a href="./info.html?id=${v.id}">
<p class="t">${v.title}</p>
<p class="source">${v.user}</p>
<p class="source">${ v.source.length > 5 ? '' :`${v.source}`}</p>
</a>
<div class="tags">
${(v.tags.map((item,index)=>{
return `<div class="tags_item">
<a href="./mechanism_info.html?id=${v.id}&amp;type=tags&amp;t=${v.title}">
${item.title}
</a>
</div> `
})).toString().replace(/,/g,"")}
</div>
</div>
</li>
</a>
`
})
return html;
}

View File

@@ -0,0 +1,20 @@
!(function(win, doc) {
function setFontSize() {
var winWidth = window.innerWidth;
doc.documentElement.style.fontSize = (winWidth / 375) * 100 + 'px';
}
var evt = 'onorientationchange' in win ? 'orientationchange' : 'resize';
var timer = null;
win.addEventListener(evt, function() {
clearTimeout(timer);
timer = setTimeout(setFontSize, 300);
}, false);
win.addEventListener("pageshow", function(e) {
if (e.persisted) {
clearTimeout(timer);
timer = setTimeout(setFontSize, 300);
}
}, false);
//初始化
setFontSize();
}(window, document));

View File

@@ -0,0 +1,47 @@
<!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>Document</title>
<link rel="stylesheet" href="http://at.alicdn.com/t/font_2124975_273pse87hq8.css">
<link rel="stylesheet" href="../css/utils/ydui.css" />
<link rel="stylesheet" href="../css/tool/clear.css">
<link rel="stylesheet" href="../css/tool/public.css">
<link rel="stylesheet" href="../css/page/classification.css">
</head>
<body>
<div class="header theme_color left">
<a href="./index.html"><i class="iconfont icon-back1"></i></a>
<p>分类管理</p>
</div>
<div class="contene left">
<div>
<p>点击删除以下分类</p>
<ul class="top_li">
</ul>
</div>
<div>
<p>点击添加以下分类</p>
<ul class="bottom_li">
</ul>
</div>
</div>
</body>
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/Swiper/6.4.14/swiper-bundle.min.js"></script>
<!-- <script src="../css/utils/ydui.js"></script> -->
<script src="../js/config/index.js"></script>
<script src="../js/http/api.js"></script>
<script src="../js/utils/index.js"></script>
<script src="../js/service/indexService.js"></script>
<script src="../js/page/classification.js"></script>
</html>

View File

@@ -0,0 +1,90 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<meta content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0" name="viewport"/>
<script src="../css/utils/ydui.flexible.js"></script>
<link rel="stylesheet" href="../css/utils/ydui.css"/>
<link rel="stylesheet" href="../css/tool/clear.css">
<link href="https://cdn.bootcdn.net/ajax/libs/Swiper/6.4.14/swiper-bundle.min.css" rel="stylesheet">
<link rel="stylesheet" href="http://at.alicdn.com/t/font_2124975_jvymm06or6a.css">
<link rel="stylesheet" href="../css/tool/public.css">
<link rel="stylesheet" href="../css/page/index.css">
</head>
<body>
<div class="header">
<div class="header_search theme_color">
<i class="iconfont color_white icon-taozi1"></i>
<a class="search" href="./search.html">
<i class="iconfont icon-search"></i>
<span>198万张图,有你想要的...</span>
</a>
<i class="iconfont color_white icon-wo"></i>
</div>
<div class="header_menu">
<ul class="menu_list"></ul>
<a href="./classification.html">
<i class="iconfont icon-edit"></i>
</a>
</div>
</div>
<div class="content">
<div class="swiper-container" id="pageSwiper">
<div class="swiper-wrapper">
<!--首页-->
<div class="swiper-slide">
<div class="swiper-container" id="modelSwiper">
<div class="swiper-wrapper">
<div class="swiper-slide">Slide 1</div>
<div class="swiper-slide">Slide 2</div>
</div>
<!-- 如果需要分页器 -->
<div class="swiper-pagination" id="modelPagination"></div>
</div>
</div>
</div>
</div>
</div>
<div class="a" style="font-size: 12px"></div>
<ul class="footer">
<li class="footer_active">
<a href="./home.html">
<i class="iconfont icon-home"></i>
<span>首页</span>
</a>
</li>
<li>
<a href="./mechanism.html">
<i class="iconfont icon-jigou"></i>
<span>机构</span>
</a>
</li>
<li>
<a href="./model.html">
<i class="iconfont icon-me"></i>
<span>模特</span>
</a>
</li>
<li>
<a href="./my.html">
<i class="iconfont icon-wo"></i>
<span>我的</span>
</a>
</li>
</ul>
</body>
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/Swiper/6.4.14/swiper-bundle.min.js"></script>
<script src="../css/utils/ydui.js"></script>
<script src="../js/config/index.js"></script>
<script src="../js/http/api.js"></script>
<script src="../js/utils/index.js"></script>
<script src="../js/service/indexService.js"></script>
<script src="../js/page/index.js"></script>
</html>

View File

@@ -0,0 +1,39 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<meta content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0" name="viewport"/>
<script src="../css/utils/ydui.flexible.js"></script>
<link rel="stylesheet" href="../css/utils/ydui.css"/>
<link rel="stylesheet" href="../css/tool/clear.css">
<link href="https://cdn.bootcdn.net/ajax/libs/Swiper/6.4.14/swiper-bundle.min.css" rel="stylesheet">
<link rel="stylesheet" href="http://at.alicdn.com/t/font_2124975_273pse87hq8.css">
<link rel="stylesheet" href="../css/tool/public.css">
<link rel="stylesheet" href="../css/page/info.css">
</head>
<body>
<div class="header_theme1 theme_color">
<div class="action">
</div>
<div class="right">
<i class="likeicon iconfont icon-xin"></i>
</div>
</div>
<div class="content_info ddd">
<div class="info ddd">
</div>
</div>
</body>
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/Swiper/6.4.14/swiper-bundle.min.js"></script>
<script src="../css/utils/ydui.js"></script>
<script src="../js/config/index.js"></script>
<script src="../js/http/api.js"></script>
<script src="../js/utils/index.js"></script>
<script src="../js/service/infoSevice.js"></script>
<script src="../js/page/info.js"></script>
</html>

View File

@@ -0,0 +1,64 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<meta content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0" name="viewport"/>
<script src="../css/utils/ydui.flexible.js"></script>
<link rel="stylesheet" href="../css/utils/ydui.css"/>
<link rel="stylesheet" href="../css/tool/clear.css">
<link href="https://cdn.bootcdn.net/ajax/libs/Swiper/6.4.14/swiper-bundle.min.css" rel="stylesheet">
<link rel="stylesheet" href="http://at.alicdn.com/t/font_2124975_273pse87hq8.css">
<link rel="stylesheet" href="../css/tool/public.css">
<link rel="stylesheet" href="../css/page/mechanism.css">
</head>
<body>
<div class="header_theme1 theme_color">
<div class="action">
<i class="iconfont icon-back1"></i>
<span>机构</span>
</div>
</div>
<div class="content_mechanism">
<ul class="mechanism_list">
</ul>
</div>
<ul class="footer">
<li class="footer_active">
<a href="./home.html">
<i class="iconfont icon-home"></i>
<span>首页</span>
</a>
</li>
<li>
<a href="./mechanism.html">
<i class="iconfont icon-jigou"></i>
<span>机构</span>
</a>
</li>
<li>
<a href="./model.html">
<i class="iconfont icon-me"></i>
<span>模特</span>
</a>
</li>
<li>
<a href="./my.html">
<i class="iconfont icon-wo"></i>
<span>我的</span>
</a>
</li>
</ul>
</body>
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/Swiper/6.4.14/swiper-bundle.min.js"></script>
<script src="../css/utils/ydui.js"></script>
<script src="../js/config/index.js"></script>
<script src="../js/http/api.js"></script>
<script src="../js/utils/index.js"></script>
<script src="../js/service/mechanismService.js"></script>
<script src="../js/page/mechanism.js"></script>
</html>

View File

@@ -0,0 +1,42 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<meta content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0" name="viewport"/>
<script src="../css/utils/ydui.flexible.js"></script>
<link rel="stylesheet" href="../css/utils/ydui.css"/>
<link rel="stylesheet" href="../css/tool/clear.css">
<link href="https://cdn.bootcdn.net/ajax/libs/Swiper/6.4.14/swiper-bundle.min.css" rel="stylesheet">
<link rel="stylesheet" href="http://at.alicdn.com/t/font_2124975_273pse87hq8.css">
<link rel="stylesheet" href="../css/tool/public.css">
<link rel="stylesheet" href="../css/page/mechanism_info.css">
</head>
<body>
<div class="header_theme1 theme_color">
<a href="../page/mechanism.html">
<div class="action">
</div>
</a>
</div>
<div class="content_info">
<div class="jg_list item_list padding_30 ">
<ul>
</ul>
</div>
</div>
</body>
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/Swiper/6.4.14/swiper-bundle.min.js"></script>
<script src="../css/utils/ydui.js"></script>
<script src="../js/config/index.js"></script>
<script src="../js/http/api.js"></script>
<script src="../js/utils/index.js"></script>
<script src="../js/service/mechInfoService.js"></script>
<script src="../js/page/mechanism_info.js"></script>
</html>

View File

@@ -0,0 +1,72 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>模特</title>
<meta content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0" name="viewport"/>
<script src="../css/utils/ydui.flexible.js"></script>
<link rel="stylesheet" href="../css/utils/ydui.css"/>
<link rel="stylesheet" href="../css/tool/clear.css">
<link href="https://cdn.bootcdn.net/ajax/libs/Swiper/6.4.14/swiper-bundle.min.css" rel="stylesheet">
<link rel="stylesheet" href="http://at.alicdn.com/t/font_2124975_273pse87hq8.css">
<link rel="stylesheet" href="../css/tool/public.css">
<link rel="stylesheet" href="../css/page/model.css">
</head>
<body>
<div class="header_theme1 theme_color">
<a href="">
<div class="action">
<i class="iconfont icon-back1"></i>
<span>模特</span>
</div>
</a>
</div>
<div class="content_theme1">
<div class="hot_models item_list padding_30">
<div class="title"></div>
<div class="model_list"></div>
</div>
<div class="newest item_list padding_30">
<div class="title"></div>
<div class="model_list"></div>
</div>
</div>
<ul class="footer">
<li class="footer_active">
<a href="./home.html">
<i class="iconfont icon-home"></i>
<span>首页</span>
</a>
</li>
<li>
<a href="./mechanism.html">
<i class="iconfont icon-jigou"></i>
<span>机构</span>
</a>
</li>
<li>
<a href="./model.html">
<i class="iconfont icon-me"></i>
<span>模特</span>
</a>
</li>
<li>
<a href="./my.html">
<i class="iconfont icon-wo"></i>
<span>我的</span>
</a>
</li>
</ul>
</body>
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/Swiper/6.4.14/swiper-bundle.min.js"></script>
<script src="../css/utils/ydui.js"></script>
<script src="../js/config/index.js"></script>
<script src="../js/http/api.js"></script>
<script src="../js/utils/index.js"></script>
<script src="../js/service/modelService.js"></script>
<script src="../js/page/model.js"></script>
</html>

View File

@@ -0,0 +1,46 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>模特</title>
<meta content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0" name="viewport"/>
<script src="../css/utils/ydui.flexible.js"></script>
<link rel="stylesheet" href="../css/utils/ydui.css"/>
<link rel="stylesheet" href="../css/tool/clear.css">
<link href="https://cdn.bootcdn.net/ajax/libs/Swiper/6.4.14/swiper-bundle.min.css" rel="stylesheet">
<link rel="stylesheet" href="http://at.alicdn.com/t/font_2124975_273pse87hq8.css">
<link rel="stylesheet" href="../css/tool/public.css">
<link rel="stylesheet" href="../css/page/model_info.css">
</head>
<body>
<div class="header_theme1 theme_color">
<div class="action">
</div>
</div>
<div class="content_info">
<div class="model_info_header padding_30"></div>
<div class="tazuop item_list padding_30">
<div class="title"></div>
<ul></ul>
</div>
<div class="similar item_list padding_30">
<div class="title"></div>
<div class="model_list"></div>
</div>
</div>>
</body>
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/Swiper/6.4.14/swiper-bundle.min.js"></script>
<script src="../css/utils/ydui.js"></script>
<script src="../js/config/index.js"></script>
<script src="../js/http/api.js"></script>
<script src="../js/utils/index.js"></script>
<script src="../js/service/model_infoService.js"></script>
<script src="../js/page/model_info.js"></script>
</html>

View File

@@ -0,0 +1,41 @@
<!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>Document</title>
<link rel="stylesheet" href="../css/utils/ydui.css" />
<link rel="stylesheet" href="../css/tool/clear.css">
<link rel="stylesheet" href="http://at.alicdn.com/t/font_2124975_273pse87hq8.css">
<link href="https://cdn.bootcdn.net/ajax/libs/Swiper/6.4.14/swiper-bundle.min.css" rel="stylesheet">
<link rel="stylesheet" href="../css/tool/public.css">
<link rel="stylesheet" href="../css/page/search.css">
</head>
<body>
111111111111111111
<div class="header header_theme1 theme_color">
<a href="./index.html"><i class="iconfont icon-back1"></i></a>
<input type="text" placeholder="&nbsp输入搜索关键字">
<i class="iconfont icon-search"></i>
</div>
<div class="coontent comms">
<!-- <a href="">
<img src="http://47.114.153.249:3000/api/json/url?url=https://tjg.hywly.com/a/1/7807/0.jpg" alt="">
<p>11222222222222222222222222211111111111111111111111111111111111111111111111111111111</p>
</a> -->
</div>
</body>
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/Swiper/6.4.14/swiper-bundle.min.js"></script>
<script src="../css/utils/ydui.js"></script>
<script src="../js/config/index.js"></script>
<script src="../js/http/api.js"></script>
<script src="../js/utils/index.js"></script>
<script src="../js/service/indexService.js"></script>
<script src="../js/page/search.js"></script>
</html>

View File

@@ -0,0 +1,14 @@
(逯帅帅)1: 机构页面,机构点击进去的 详情页
(逯帅帅)6:我的页面,我的收藏(展示收藏列表,右上角有个删除图标,点击删除)
(逯帅帅)7:继续完善组件 item() utils/index.js
(谢文军)2:模特页面,模特点击进去的 详情页
(谢文军)5:详情页面,收藏功能(类似美食app的收藏)
(应越波)3:搜索页面
(应越波)4:分类管理