-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
maojun
committed
Feb 4, 2019
1 parent
8e624be
commit 654eae5
Showing
14 changed files
with
3,624 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file not shown.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,227 @@ | ||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> | ||
<html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml"> | ||
<head> | ||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> | ||
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon"> | ||
<link rel="icon" sizes="any" mask="" href="favicon.ico"> | ||
<title>title</title> | ||
<link type="text/css" rel="stylesheet" href="renxi/default.css"> | ||
<script type="text/javascript" src="renxi/jquery.min.js"></script> | ||
<script type="text/javascript" src="renxi/jscex.min.js"></script> | ||
<script type="text/javascript" src="renxi/jscex-parser.js"></script> | ||
<script type="text/javascript" src="renxi/jscex-jit.js"></script> | ||
<script type="text/javascript" src="renxi/jscex-builderbase.min.js"></script> | ||
<script type="text/javascript" src="renxi/jscex-async.min.js"></script> | ||
<script type="text/javascript" src="renxi/jscex-async-powerpack.min.js"></script> | ||
<script type="text/javascript" src="renxi/functions.js" charset="utf-8"></script> | ||
<script type="text/javascript" src="renxi/love.js" charset="utf-8"></script> | ||
<style type="text/css"> | ||
<!-- | ||
.STYLE1 { | ||
color: #666666 | ||
} | ||
--> | ||
</style> | ||
</head> | ||
<body> | ||
<audio id="music2" preload="auto" loop="loop"> | ||
你的浏览器不支持audio标签 | ||
<source src="1126238280.mp3" type="audio/mp3" /> | ||
</audio> | ||
<div id="main"> | ||
<div id="error">本页面采用HTML5编辑,目前您的浏览器无法显示,请换成谷歌(<a href="http://www.google.cn/chrome/intl/zh-CN/landing_chrome.html?hl=zh-CN&brand=CHMI">Chrome</a>)或者火狐(<a href="http://firefox.com.cn/download/">Firefox</a>)浏览器,或者其他游览器的最新版本。</div> | ||
<div id="wrap"> | ||
<div id="text"> | ||
<div id="code"> <font color="#ff0230"> <span class="say">love</span><br> | ||
<span class="say"> </span><br> | ||
<span class="say">time </span><br> | ||
<span class="say">dosomthing</span><br> | ||
<span class="say"> </span><br> | ||
<span class="say"> time </span><br> | ||
<span class="say">something</span><br> | ||
<span class="say"></span><br> | ||
<span class="say">time</span><br> | ||
<span class="say">something</span><br> | ||
<span class="say"> </span><br> | ||
<span class="say">time </span><br> | ||
<span class="say">something</span><br> | ||
<span class="say"><span class="space"></span> By somebody </span></font> | ||
</p> | ||
</div> | ||
</div> | ||
<div id="clock-box"> <span class="STYLE1"></span><font color="#EE6363">from<span style="color:#ff0230">something</span>to</font> <span class="STYLE1">already..</span> | ||
<div id="clock"></div> | ||
</div> | ||
<canvas id="canvas" width="1100" height="680" onclick="playPause()"></canvas> | ||
</div> | ||
</div> | ||
<script> | ||
</script> | ||
<script> | ||
function playPause() { | ||
var music = document.getElementById('music2'); | ||
var music_btn = document.getElementById('canvas'); | ||
if (music.paused){ | ||
music.play(); | ||
} | ||
} | ||
|
||
(function(){ | ||
var canvas = $('#canvas'); | ||
|
||
if (!canvas[0].getContext) { | ||
$("#error").show(); | ||
return false; } | ||
|
||
var width = canvas.width(); | ||
var height = canvas.height(); | ||
canvas.attr("width", width); | ||
canvas.attr("height", height); | ||
var opts = { | ||
seed: { | ||
x: width / 2 - 20, | ||
color: "rgb(190, 26, 37)", | ||
scale: 2 | ||
}, | ||
branch: [ | ||
[535, 680, 570, 250, 500, 200, 30, 100, [ | ||
[540, 500, 455, 417, 340, 400, 13, 100, [ | ||
[450, 435, 434, 430, 394, 395, 2, 40] | ||
]], | ||
[550, 445, 600, 356, 680, 345, 12, 100, [ | ||
[578, 400, 648, 409, 661, 426, 3, 80] | ||
]], | ||
[539, 281, 537, 248, 534, 217, 3, 40], | ||
[546, 397, 413, 247, 328, 244, 9, 80, [ | ||
[427, 286, 383, 253, 371, 205, 2, 40], | ||
[498, 345, 435, 315, 395, 330, 4, 60] | ||
]], | ||
[546, 357, 608, 252, 678, 221, 6, 100, [ | ||
[590, 293, 646, 277, 648, 271, 2, 80] | ||
]] | ||
]] | ||
], | ||
bloom: { | ||
num: 700, | ||
width: 1080, | ||
height: 650, | ||
}, | ||
footer: { | ||
width: 1200, | ||
height: 5, | ||
speed: 10, | ||
} | ||
} | ||
|
||
var tree = new Tree(canvas[0], width, height, opts); | ||
var seed = tree.seed; | ||
var foot = tree.footer; | ||
var hold = 1; | ||
|
||
canvas.click(function(e) { | ||
var offset = canvas.offset(), x, y; | ||
x = e.pageX - offset.left; | ||
y = e.pageY - offset.top; | ||
if (seed.hover(x, y)) { | ||
hold = 0; | ||
canvas.unbind("click"); | ||
canvas.unbind("mousemove"); | ||
canvas.removeClass('hand'); | ||
} | ||
}).mousemove(function(e){ | ||
var offset = canvas.offset(), x, y; | ||
x = e.pageX - offset.left; | ||
y = e.pageY - offset.top; | ||
canvas.toggleClass('hand', seed.hover(x, y)); | ||
}); | ||
|
||
var seedAnimate = eval(Jscex.compile("async", function () { | ||
seed.draw(); | ||
while (hold) { | ||
$await(Jscex.Async.sleep(10)); | ||
} | ||
while (seed.canScale()) { | ||
seed.scale(0.95); | ||
$await(Jscex.Async.sleep(10)); | ||
} | ||
while (seed.canMove()) { | ||
seed.move(0, 2); | ||
foot.draw(); | ||
$await(Jscex.Async.sleep(10)); | ||
} | ||
})); | ||
|
||
var growAnimate = eval(Jscex.compile("async", function () { | ||
do { | ||
tree.grow(); | ||
$await(Jscex.Async.sleep(10)); | ||
} while (tree.canGrow()); | ||
})); | ||
|
||
var flowAnimate = eval(Jscex.compile("async", function () { | ||
do { | ||
tree.flower(2); | ||
$await(Jscex.Async.sleep(10)); | ||
} while (tree.canFlower()); | ||
})); | ||
|
||
var moveAnimate = eval(Jscex.compile("async", function () { | ||
tree.snapshot("p1", 240, 0, 610, 680); | ||
while (tree.move("p1", 500, 0)) { | ||
foot.draw(); | ||
$await(Jscex.Async.sleep(10)); | ||
} | ||
foot.draw(); | ||
tree.snapshot("p2", 500, 0, 610, 680); | ||
|
||
// 会有闪烁不得意这样做 | ||
canvas.parent().css("background", "url(" + tree.toDataURL('image/png') + ")"); | ||
canvas.css("background", "#ffe"); | ||
$await(Jscex.Async.sleep(300)); | ||
canvas.css("background", "none"); | ||
})); | ||
|
||
var jumpAnimate = eval(Jscex.compile("async", function () { | ||
var ctx = tree.ctx; | ||
while (true) { | ||
tree.ctx.clearRect(0, 0, width, height); | ||
tree.jump(); | ||
foot.draw(); | ||
$await(Jscex.Async.sleep(25)); | ||
} | ||
})); | ||
|
||
var textAnimate = eval(Jscex.compile("async", function () { | ||
var together = new Date(); | ||
together.setFullYear(2018,04, 24); //时间年月日 | ||
together.setHours(08); //小时 | ||
together.setMinutes(27); //分钟 | ||
together.setSeconds(0); //秒前一位 | ||
together.setMilliseconds(2); //秒第二位 | ||
|
||
$("#code").show().typewriter(); | ||
$("#clock-box").fadeIn(500); | ||
while (true) { | ||
timeElapse(together); | ||
$await(Jscex.Async.sleep(1000)); | ||
} | ||
})); | ||
|
||
var runAsync = eval(Jscex.compile("async", function () { | ||
$await(seedAnimate()); | ||
$await(growAnimate()); | ||
$await(flowAnimate()); | ||
$await(moveAnimate()); | ||
|
||
textAnimate().start(); | ||
|
||
$await(jumpAnimate()); | ||
})); | ||
|
||
runAsync().start(); | ||
})(); | ||
</script> | ||
|
||
|
||
</body> | ||
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
body{margin:0;padding:0;background:#ffe;font-size:14px;font-family:'微软雅黑','宋体',sans-serif;color:#231F20;overflow:auto} | ||
a {color:#000;font-size:14px;} | ||
#main{width:100%;} | ||
#wrap{position:relative;margin:0 auto;width:1100px;height:680px;margin-top:10px;} | ||
#text{width:400px;height:425px;left:60px;top:80px;position:absolute;} | ||
#code{display:none;font-size:16px;} | ||
#clock-box {position:absolute;left:60px;top:550px;font-size:28px;display:none;} | ||
#clock-box a {font-size:28px;text-decoration:none;} | ||
#clock{margin-left:48px;} | ||
#clock .digit {font-size:64px;} | ||
#canvas{margin:0 auto;width:1100px;height:680px;} | ||
#error{margin:0 auto;text-align:center;margin-top:60px;display:none;} | ||
.hand{cursor:pointer;} | ||
.say{margin-left:5px;} | ||
.space{margin-right:150px;} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
/* | ||
* http://love.hackerzhou.me | ||
*/ | ||
|
||
// variables | ||
var $win = $(window); | ||
var clientWidth = $win.width(); | ||
var clientHeight = $win.height(); | ||
|
||
$(window).resize(function() { | ||
var newWidth = $win.width(); | ||
var newHeight = $win.height(); | ||
if (newWidth != clientWidth && newHeight != clientHeight) { | ||
location.replace(location); | ||
} | ||
}); | ||
|
||
(function($) { | ||
$.fn.typewriter = function() { | ||
this.each(function() { | ||
var $ele = $(this), str = $ele.html(), progress = 0; | ||
$ele.html(''); | ||
var timer = setInterval(function() { | ||
var current = str.substr(progress, 1); | ||
if (current == '<') { | ||
progress = str.indexOf('>', progress) + 1; | ||
} else { | ||
progress++; | ||
} | ||
$ele.html(str.substring(0, progress) + (progress & 1 ? '_' : '')); | ||
if (progress >= str.length) { | ||
clearInterval(timer); | ||
} | ||
}, 75); | ||
}); | ||
return this; | ||
}; | ||
})(jQuery); | ||
|
||
function timeElapse(date){ | ||
var current = Date(); | ||
var seconds = (Date.parse(current) - Date.parse(date)) / 1000; | ||
var days = Math.floor(seconds / (3600 * 24)); | ||
seconds = seconds % (3600 * 24); | ||
var hours = Math.floor(seconds / 3600); | ||
if (hours < 10) { | ||
hours = "0" + hours; | ||
} | ||
seconds = seconds % 3600; | ||
var minutes = Math.floor(seconds / 60); | ||
if (minutes < 10) { | ||
minutes = "0" + minutes; | ||
} | ||
seconds = seconds % 60; | ||
if (seconds < 10) { | ||
seconds = "0" + seconds; | ||
} | ||
var result = "第 <span class=\"digit\">" + days + "</span> 天 <span class=\"digit\">" + hours + "</span> 小时 <span class=\"digit\">" + minutes + "</span> 分钟 <span class=\"digit\">" + seconds + "</span> 秒"; | ||
$("#clock").html(result); | ||
} |
Large diffs are not rendered by default.
Oops, something went wrong.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Oops, something went wrong.