更新demo页面
This commit is contained in:
parent
c168cea966
commit
71a37baacc
|
@ -23,12 +23,6 @@
|
|||
<canvas id="demo-canvas"></canvas>
|
||||
<h1 class="main-title">Connect <span class="thin">Three</span></h1>
|
||||
</div>
|
||||
<nav class="codrops-demos">
|
||||
<a class="current-demo" href="index.html">Demo 1</a>
|
||||
<a href="index2.html">Demo 2</a>
|
||||
<a href="index3.html">Demo 3</a>
|
||||
<a href="index4.html">Demo 4</a>
|
||||
</nav>
|
||||
</div>
|
||||
</div><!-- /container -->
|
||||
<script src="js/TweenLite.min.js"></script>
|
||||
|
|
|
@ -23,12 +23,6 @@
|
|||
<canvas id="demo-canvas"></canvas>
|
||||
<h1 class="main-title">Spirit</span></h1>
|
||||
</div>
|
||||
<nav class="codrops-demos">
|
||||
<a href="index.html">Demo 1</a>
|
||||
<a class="current-demo" href="index2.html">Demo 2</a>
|
||||
<a href="index3.html">Demo 3</a>
|
||||
<a href="index4.html">Demo 4</a>
|
||||
</nav>
|
||||
</div>
|
||||
</div><!-- /container -->
|
||||
<script src="js/rAF.js"></script>
|
||||
|
|
|
@ -23,12 +23,6 @@
|
|||
<canvas id="demo-canvas"></canvas>
|
||||
<h1 class="main-title">Collab</span></h1>
|
||||
</div>
|
||||
<nav class="codrops-demos">
|
||||
<a href="index.html">Demo 1</a>
|
||||
<a href="index2.html">Demo 2</a>
|
||||
<a class="current-demo" href="index3.html">Demo 3</a>
|
||||
<a href="index4.html">Demo 4</a>
|
||||
</nav>
|
||||
</div>
|
||||
</div><!-- /container -->
|
||||
<script src="js/TweenLite.min.js"></script>
|
||||
|
|
|
@ -23,12 +23,6 @@
|
|||
<canvas id="demo-canvas"></canvas>
|
||||
<h1 class="main-title">Morning Light</span></h1>
|
||||
</div>
|
||||
<nav class="codrops-demos">
|
||||
<a href="index.html">Demo 1</a>
|
||||
<a href="index2.html">Demo 2</a>
|
||||
<a href="index3.html">Demo 3</a>
|
||||
<a class="current-demo" href="index4.html">Demo 4</a>
|
||||
</nav>
|
||||
</div>
|
||||
</div><!-- /container -->
|
||||
<script src="js/rAF.js"></script>
|
||||
|
|
38
config.js
38
config.js
|
@ -1,24 +1,42 @@
|
|||
export let config = {
|
||||
txlists: [{
|
||||
export let config = [{
|
||||
title: '特效',
|
||||
data: [{
|
||||
name: '标题特效',
|
||||
url: 'tx/dllcn/index.html'
|
||||
}, {
|
||||
name: '404',
|
||||
url: 'tx/404_01/index.html'
|
||||
}],
|
||||
canvaslists: [{
|
||||
}]
|
||||
},
|
||||
{
|
||||
title: 'Canvas背景',
|
||||
data: [{
|
||||
name: 'webglCanvas',
|
||||
url: 'canvas/webglCanvas/index.html'
|
||||
},
|
||||
{
|
||||
name: 'AnimatedBackground',
|
||||
data: [{
|
||||
name: 'AnimatedBackground',
|
||||
url: 'canvas/AnimatedBackground/index.html'
|
||||
}, {
|
||||
name: 'AnimatedBackground2',
|
||||
url: 'canvas/AnimatedBackground/index2.html'
|
||||
}, {
|
||||
name: 'AnimatedBackground3',
|
||||
url: 'canvas/AnimatedBackground/index3.html'
|
||||
}, {
|
||||
name: 'AnimatedBackground4',
|
||||
url: 'canvas/AnimatedBackground/index4.html'
|
||||
}]
|
||||
},
|
||||
{
|
||||
name: 'PoppingBubbles',
|
||||
url: 'canvas/PoppingBubbles/index.html'
|
||||
},
|
||||
{
|
||||
name: '3DBackground',
|
||||
data: [{
|
||||
name: '3DBackground',
|
||||
url: 'canvas/3DBackground/index.html'
|
||||
},
|
||||
|
@ -26,9 +44,15 @@ export let config = {
|
|||
name: '3DBackground2',
|
||||
url: 'canvas/3DBackground/index2.html'
|
||||
}
|
||||
],
|
||||
loadinglists: [{
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'loading动画',
|
||||
data: [{
|
||||
name: 'css3-flower-loading',
|
||||
url: 'loading/css3-flower-loading/index.html'
|
||||
}]
|
||||
}
|
||||
},
|
||||
]
|
|
@ -0,0 +1,184 @@
|
|||
#container {
|
||||
position: fixed;
|
||||
width: 100vw;
|
||||
height: 100vh;
|
||||
display: flex;
|
||||
top: 0;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
ul {
|
||||
list-style: none;
|
||||
font-size: 1.2rem;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.tx-list {
|
||||
width: 300px;
|
||||
}
|
||||
|
||||
.tx-ifram {
|
||||
flex: 1;
|
||||
/* border: 1px solid; */
|
||||
position: relative;
|
||||
}
|
||||
|
||||
iframe {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.tx-ol {
|
||||
cursor: pointer;
|
||||
margin: 10px 0;
|
||||
}
|
||||
|
||||
.tx-ol:hover {
|
||||
color: aqua;
|
||||
}
|
||||
|
||||
.github-corner:hover .octo-arm {
|
||||
animation: octocat-wave 560ms ease-in-out
|
||||
}
|
||||
|
||||
@keyframes octocat-wave {
|
||||
|
||||
0%,
|
||||
100% {
|
||||
transform: rotate(0)
|
||||
}
|
||||
|
||||
20%,
|
||||
60% {
|
||||
transform: rotate(-25deg)
|
||||
}
|
||||
|
||||
40%,
|
||||
80% {
|
||||
transform: rotate(10deg)
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width:500px) {
|
||||
.github-corner:hover .octo-arm {
|
||||
animation: none
|
||||
}
|
||||
|
||||
.github-corner .octo-arm {
|
||||
animation: octocat-wave 560ms ease-in-out
|
||||
}
|
||||
}
|
||||
|
||||
.is-scrollable {
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
.dashboard {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
}
|
||||
.dashboard.is-full-height {
|
||||
height: 100vh;
|
||||
}
|
||||
.dashboard-panel {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
padding: 2rem 1.5rem;
|
||||
flex: 0 0 25rem;
|
||||
height: 100%;
|
||||
background: #222 !important;
|
||||
}
|
||||
.dashboard-panel.left {
|
||||
flex: 0 0 25rem;
|
||||
}
|
||||
.dashboard-panel.right {
|
||||
flex: 0 0 25rem;
|
||||
}
|
||||
.dashboard-panel.has-thick-padding {
|
||||
padding: 3rem 0;
|
||||
}
|
||||
.dashboard-panel.is-one-quarter {
|
||||
flex: 0 0 25%;
|
||||
}
|
||||
.dashboard-panel.is-half {
|
||||
flex: 0 0 50%;
|
||||
}
|
||||
.dashboard-panel.is-one-third {
|
||||
flex: 0 0 33.3333333333%;
|
||||
}
|
||||
.dashboard-panel.is-small {
|
||||
flex: 0 0 15rem;
|
||||
}
|
||||
.dashboard-panel.is-medium {
|
||||
flex: 0 0 20rem;
|
||||
}
|
||||
.dashboard-panel.is-large {
|
||||
flex: 0 0 30rem;
|
||||
}
|
||||
.dashboard-panel-header.is-centered, .dashboard-panel-content.is-centered, .dashboard-panel-footer.is-centered {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
}
|
||||
.dashboard-panel-header {
|
||||
margin-bottom: 2rem;
|
||||
}
|
||||
.dashboard-panel-main {
|
||||
flex: 1;
|
||||
}
|
||||
.dashboard-panel-footer {
|
||||
margin-top: 2rem;
|
||||
}
|
||||
.dashboard-main {
|
||||
display: flex;
|
||||
flex: 1;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
min-height: 100vh;
|
||||
}
|
||||
.dashboard-main .navbar.is-fixed-top {
|
||||
position: -webkit-sticky;
|
||||
position: sticky;
|
||||
top: 0;
|
||||
}
|
||||
.dashboard-main .footer {
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
/*# sourceMappingURL=bulma-dashboard.css.map */
|
||||
|
||||
.section{
|
||||
padding: 0;
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
.footer{
|
||||
padding: 0;
|
||||
}
|
||||
img{
|
||||
width: 30%;
|
||||
}
|
||||
|
||||
.menu-label{
|
||||
font-size: 1.2rem;
|
||||
font-weight: bold;
|
||||
margin: 1rem 0 !important;
|
||||
color: #3298dc;
|
||||
}
|
||||
|
||||
.menu-list{
|
||||
font-size: 1rem;
|
||||
|
||||
}
|
||||
.menu-ol{
|
||||
padding-left: 3rem;
|
||||
}
|
||||
|
||||
.menu-list a{
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
a{
|
||||
color: #fff;
|
||||
}
|
201
index.htm
201
index.htm
|
@ -8,84 +8,14 @@
|
|||
<title>前端特效</title>
|
||||
|
||||
<script src="https://unpkg.com/vue@next"></script>
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bulma@0.9.2/css/bulma.min.css">
|
||||
<link rel="stylesheet" href="./index.css">
|
||||
</head>
|
||||
<style>
|
||||
#container {
|
||||
position: fixed;
|
||||
width: 100vw;
|
||||
height: 100vh;
|
||||
display: flex;
|
||||
top: 0;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
ul {
|
||||
list-style: none;
|
||||
font-size: 1.2rem;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.tx-list {
|
||||
width: 300px;
|
||||
}
|
||||
|
||||
.tx-ifram {
|
||||
flex: 1;
|
||||
/* border: 1px solid; */
|
||||
position: relative;
|
||||
}
|
||||
|
||||
iframe {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.tx-ol {
|
||||
cursor: pointer;
|
||||
margin: 10px 0;
|
||||
}
|
||||
|
||||
.tx-ol:hover {
|
||||
color: aqua;
|
||||
}
|
||||
|
||||
.github-corner:hover .octo-arm {
|
||||
animation: octocat-wave 560ms ease-in-out
|
||||
}
|
||||
|
||||
@keyframes octocat-wave {
|
||||
|
||||
0%,
|
||||
100% {
|
||||
transform: rotate(0)
|
||||
}
|
||||
|
||||
20%,
|
||||
60% {
|
||||
transform: rotate(-25deg)
|
||||
}
|
||||
|
||||
40%,
|
||||
80% {
|
||||
transform: rotate(10deg)
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width:500px) {
|
||||
.github-corner:hover .octo-arm {
|
||||
animation: none
|
||||
}
|
||||
|
||||
.github-corner .octo-arm {
|
||||
animation: octocat-wave 560ms ease-in-out
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
<body>
|
||||
<div id="container">
|
||||
<a href="https://github.com/KeiferJu/css3-tx" class="github-corner" aria-label="View source on GitHub"><svg
|
||||
|
||||
<div class="dashboard is-full-height" id="container">
|
||||
<!-- <a href="https://github.com/KeiferJu/css3-tx" class="github-corner" aria-label="View source on GitHub"><svg
|
||||
width="80" height="80" viewBox="0 0 250 250"
|
||||
style="fill:#151513; color:#fff; position: absolute; top: 0; border: 0; right: 0;z-index: 999;" aria-hidden="true">
|
||||
<path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path>
|
||||
|
@ -96,35 +26,114 @@
|
|||
d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z"
|
||||
fill="currentColor" class="octo-body"></path>
|
||||
</svg>
|
||||
</a>
|
||||
<div class="tx-list">
|
||||
<h3 style="padding-left: 10px;" v-if="txlists && txlists.length > 0">特效</h3>
|
||||
<ol>
|
||||
<li v-for="list in txlists" class="tx-ol">
|
||||
<div @click="todoPage(list.url)">{{list.name}}</div>
|
||||
</li>
|
||||
</a> -->
|
||||
<!-- left panel -->
|
||||
<div class="dashboard-panel is-medium has-thick-padding has-background-grey-lighter is-hidden-mobile">
|
||||
<header class="dashboard-panel-header">
|
||||
<div class="has-text-centered">
|
||||
<img src="http://dllcnx.com:10010/album/icon/icon.png" width="50%">
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<div class="dashboard-panel-content is-scrollable" style="padding: 0 2rem;">
|
||||
<aside class="menu has-text-white">
|
||||
<div v-for="list in lists">
|
||||
<p class="menu-label">
|
||||
{{list.title}}
|
||||
</p>
|
||||
<ul class="menu-list">
|
||||
<template v-for="item in list.data">
|
||||
<template v-if="item.data && item.data.length > 0">
|
||||
<li>
|
||||
<a>{{item.name}}</a>
|
||||
<ol class="menu-list menu-ol">
|
||||
<template v-for="iitem in item.data">
|
||||
<li @click="todoPage(iitem)"><a>{{iitem.name}}</a></li>
|
||||
</template>
|
||||
</ol>
|
||||
<h3 style="padding-left: 10px;" v-if="canvaslists && canvaslists.length > 0">Canvas背景</h3>
|
||||
<ol>
|
||||
<li v-for="list in canvaslists" class="tx-ol">
|
||||
<div @click="todoPage(list.url)">{{list.name}}</div>
|
||||
</li>
|
||||
</ol>
|
||||
<h3 style="padding-left: 10px;" v-if="loadinglists && loadinglists.length > 0">loading动画</h3>
|
||||
<ol>
|
||||
<li v-for="list in loadinglists" class="tx-ol">
|
||||
<div @click="todoPage(list.url)">{{list.name}}</div>
|
||||
</li>
|
||||
</ol>
|
||||
|
||||
</template>
|
||||
|
||||
<template v-else>
|
||||
<li @click="todoPage(item)"><a>{{item.name}}</a></li>
|
||||
</template>
|
||||
</template>
|
||||
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="tx-ifram">
|
||||
</aside>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- main section -->
|
||||
<div class="dashboard-main is-scrollable">
|
||||
<nav class="navbar is-fixed-top is-dark">
|
||||
<div class="navbar-menu">
|
||||
<div class="navbar-start">
|
||||
<span class="navbar-item">
|
||||
{{pageName}}
|
||||
</span>
|
||||
</div>
|
||||
<div class="navbar-end">
|
||||
<span class="navbar-item">
|
||||
<div class="buttons">
|
||||
<button class="button is-info is-focused is-small">
|
||||
<a href="http://myllcn.com/">HOME</a>
|
||||
</button>
|
||||
<button class="button is-success is-focused is-small">
|
||||
<a href="http://dllcnx.com:10020/">BLOG</a>
|
||||
</button>
|
||||
<button class="button is-warning is-focused is-small">
|
||||
<a href="http://dllcnx.com:9000/blog/jkf19980216">NOTE</a>
|
||||
</button>
|
||||
<button class="button is-danger is-focused is-small">
|
||||
<a href="https://github.com/KeiferJu/css3-tx">GITHUB</a>
|
||||
</button>
|
||||
</div>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<section class="section">
|
||||
<iframe :src="pageurl"></iframe>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</body>
|
||||
<script src="./index.js" type="module"></script>
|
||||
<script type="module">
|
||||
import {
|
||||
config
|
||||
} from "./config.js";
|
||||
|
||||
const HelloVueApp = {
|
||||
data() {
|
||||
return {
|
||||
// txlists: [],
|
||||
lists: [],
|
||||
pageurl: "",
|
||||
pageName: ""
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.lists = config ? config : [];
|
||||
this.pageurl = config[0].data[0].url;
|
||||
this.pageName = config[0].data[0].name;
|
||||
},
|
||||
methods: {
|
||||
todoPage(item) {
|
||||
this.pageurl = item.url;
|
||||
this.pageName = item.name;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Vue.createApp(HelloVueApp).mount('#container')
|
||||
</script>
|
||||
|
||||
</html>
|
23
index.js
23
index.js
|
@ -1,23 +0,0 @@
|
|||
import { config } from "./config.js";
|
||||
|
||||
const HelloVueApp = {
|
||||
data() {
|
||||
return {
|
||||
txlists: [],
|
||||
pageurl: ""
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.txlists = config.txlists ? config.txlists : [];
|
||||
this.canvaslists = config.canvaslists ? config.canvaslists : [];
|
||||
this.loadinglists = config.loadinglists ? config.loadinglists : [];
|
||||
this.pageurl = this.canvaslists[0].url
|
||||
},
|
||||
methods: {
|
||||
todoPage(url) {
|
||||
this.pageurl = url;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Vue.createApp(HelloVueApp).mount('#container')
|
Loading…
Reference in New Issue