-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
136 lines (132 loc) · 9.62 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Xian Xiaobo</title>
<link rel="icon" href="data:image/x-icon;base64,AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAABILAAASCwAAAAAAAAAAAABAREQCQEREBEBERANAREQCQEREAkBERANAREQDQEREA0BERAJAREQCQEREA0BERANAREQDQEREAkBERAJAREQDQEREA0BERANAREQCQEREAkBERANAREQDQEREA0BERAJAREQCQEREA0BERANAREQDQEREAkBERAJAREQDQEREA0BERAJAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQDQEREAkBERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERAJAREQDQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREAkBERANAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQDQEREA0BERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERANAREQCQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREA0BERAJAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQCQEREA0BERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERAJAREQDQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBVJXVwOgqakBTFBQA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEREhIBG92dgJobm4CQUVFA0BERARAREQFQEREA0BERANAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0JGRgNhZmYCEBEREQgICCAODw8KanFxAUFFRQRAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA15jYwIdHx8HCgsLHgsMDBY7Pj4CRkpKA0BERARAREQDQEREAkBERARAREQFQEREBEBERANAREQDQEREBEBERAVCRkYERUhIAgMDA0QBAgK8AQEB4gECAqYDBAQtl6CgAUBERARAREQFQEREBEBERANAREQDQEREBEBERAVwd3cCBQUFGwICApABAQHdAQICzQMDA2AbHR0GSk9PA0BERAOpsbEBWF5eAkBERARAREQFQEREBEBERANAREQDQEREBMPOzgEDBARBAQEB4gEBAfwBAQHsAQEB/wEBAccEBQUir7q6AUBERARAREQFQEREBEBERANAREQDUldXAxESEhACAgKjAQEB/wEBAe0BAQH3AQEB8wICAmJyeXkBQ0dHAgcHBxcKCwsQVltbAkBERARAREQFQEREBEBERANwd3cCCQoKGAECAr8BAQH/AQEBkwQFBTIBAgK2AQEB/wICApcUFRUITFFRA0BERARAREQFQEREBEJGRgOOlZUBAgICcAEBAf0BAQHRAwQEPQICAnABAQH1AQEB3wQEBDIAAAAAAQEBzAECAqoICQkUZmxsAkBERARAREQFQkZGBKawsAECAgJ3AQEB/wICArsICQkWAAAAAAQEBC4BAQHbAQEB9QMDA04AAAAAQEREA0BERARAREQFr7q6AQQEBC0BAQHdAQEB8gMEBE8AAAAAFxgYBgICApMBAQH/AgICohAREQoBAQHVAQEB/QICAm3///8AQUVFA0BERASHkJACBQUFLgEBAd4BAQHxAwQESP///wFAREQE////AAICAm4BAQH+AQICvgoKChVvdnYCQEREA0ZKSgQjJiYHAgICmgEBAf8BAgKXIiQkCEZLSwSdp6cCBAUFJgEBAdcBAQH0AgMDWAICAl0BAQH0AQIC2QUGBij///8BSE1NAxwdHQcCAgKaAQEB/wEBAZYbHR0GRktLBEBERAVdY2MDCAkJEwEBAb4BAQH/AgMDbvP//wFBRUUDAAAAAAMEBEcBAQHwAQEB4AQEBC7///8BQEREBEFFRQW4w8MBAgICbgEBAf0BAQHVCQkJCQEBAaEBAQH/AgIClhgaGgcAAAAAAgMDUAEBAfEBAQHfBAUFLv///wBAREQDQEREBEBERAX///8AAgICUgEBAfUBAQHbBgYGMAAAAAAHBwcVAQEBuwEBAf8CAwN5bHJyAkJGRgNAREQDQEREBFZbWwMKCwsUAQEBqQEBAccAAAAAAwMDMgEBAd8BAQH2AwMDcAQEBD4BAQHTAQEB/QICAnJobm4DQUZGBEBERANAREQDQEREBEhMTAQYGhoJAQEBmwEBAf8CAgK3BgYGMgICApMBAQH/AQEBwAkKChpfZWUDQEREBEBERANAREQDQEREBFBVVQQODg4RCAgIE0JGRgNcYmICAgICZwEBAfQBAQH3AQEB7gEBAf8BAQGmCwsLEFVaWgNAREQFQEREBEBERANAREQDQEREBHN7ewMGBwclAQEByAEBAf8BAQHrAQEB/AEBAeQCAwND////AEBERARAREQFQEREBEBERANAREQDQEREBE9UVARka2sCQEREA0dMTAQdHx8HAgICZgEBAc8BAQHeAgIClQgICByos7MBQEREA0BERARAREQFQEREBEBERANAREQDQEREBIGIiAIFBQUxAQEBrQEBAeEBAgLABAQES0tQUANDR0cDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERANAREQCQEREBERISARBRkYDCQkJFgcICB0iJCQHWV5eAz9DQwRAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBGtwcAIVFhYLBgcHHwwNDRBkaWkCQkZGBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREA0BERAJAREQDQEREBEFFRQVeY2MDjpeXAUZKSgNAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEhNTQR6gYECWV9fAkBERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQCQEREA0BERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERAJAREQDQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREA0BERANAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQDQEREAkBERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERANAREQCQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREAkBERANAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQCQEREA0BERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERANAREQDQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBUBERARAREQDQEREA0BERARAREQFQEREBEBERANAREQDQEREBEBERAVAREQEQEREA0BERANAREQEQEREBEBERAJAREQDQEREA0BERANAREQCQEREAkBERANAREQDQEREA0BERAJAREQCQEREA0BERANAREQDQEREAkBERAJAREQDQEREA0BERANAREQCQEREAkBERANAREQDQEREA0BERAJAREQCQEREA0BERANAREQDQEREAkBERAJAREQCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEACEAgAAAAAAAACAAEABAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=" type="image/x-icon">
<style>
html, body {
overflow: hidden;
margin: 0;
}
body {
font-family: 'Open Sans', 'Helvetica Neue', 'Hiragino Sans GB', 'LiHei Pro', Arial, sans-serif;
color: #333;
}
#wrapper {
position: absolute;
left: 0;
width: 320px;
text-align: center;
top: 50%;
left: 50%;
margin-left: -160px;
margin-top: -160px;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
}
h1 {
font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
font-weight: 700;
font-size: 30px;
letter-spacing: 9px;
text-transform: uppercase;
margin: 12px 0;
left: 4px;
}
h2 {
color: #999;
font-weight: normal;
font-size: 15px;
letter-spacing: .12em;
margin-bottom: 30px;
left: 3px;
}
h1, h2 {
position: relative;
}
p {
font-size: 14px;
line-height: 2em;
margin: 0;
letter-spacing: 2px;
}
canvas {
position: absolute;
top: 0;
left: 0;
z-index: 0;
width: 100%;
height: 100%;
pointer-events: none;
}
a {
color: #999;
text-decoration: none;
transition: color .2s ease;
}
a:hover {
color: #f33;
}
</style>
</head>
<body>
<div id="wrapper">
<h1>Xian Xiaobo</h1>
<h2>人生最重要的事情就是清楚地认识自己。</h2>
<p><a href="https://www.cnblogs.com/xianxiaobo/" target="_blank">Blog</a></p>
<p><a href="https://github.com/ilovekerry" target="_blank">Github</a></p>
<p><a href="./Angular-Admin/dist/" target="_blank">Angular-Admin</a></p>
<p><a href="./demos/demo.html" target="_blank">More</a></p>
</div>
<canvas></canvas>
<script>
document.addEventListener('touchmove', function (e) {
e.preventDefault()
})
var c = document.getElementsByTagName('canvas')[0],
x = c.getContext('2d'),
pr = window.devicePixelRatio || 1,
w = window.innerWidth,
h = window.innerHeight,
f = 90,
q,
m = Math,
r = 0,
u = m.PI*2,
v = m.cos,
z = m.random
c.width = w*pr
c.height = h*pr
x.scale(pr, pr)
x.globalAlpha = 0.6
function i(){
x.clearRect(0,0,w,h)
q=[{x:0,y:h*.7+f},{x:0,y:h*.7-f}]
while(q[1].x<w+f) d(q[0], q[1])
}
function d(i,j){
x.beginPath()
x.moveTo(i.x, i.y)
x.lineTo(j.x, j.y)
var k = j.x + (z()*2-0.25)*f,
n = y(j.y)
x.lineTo(k, n)
x.closePath()
r-=u/-50
x.fillStyle = '#'+(v(r)*127+128<<16 | v(r+u/3)*127+128<<8 | v(r+u/3*2)*127+128).toString(16)
x.fill()
q[0] = q[1]
q[1] = {x:k,y:n}
}
function y(p){
var t = p + (z()*2-1.1)*f
return (t>h||t<0) ? y(p) : t
}
document.onclick = i
document.ontouchstart = i
i()
</script>
</body>
</html>