ホームページ >ウェブフロントエンド >jsチュートリアル >jQueryとHTML5_jqueryを組み合わせて制作したラブツリーの告白アニメーション

jQueryとHTML5_jqueryを組み合わせて制作したラブツリーの告白アニメーション

WBOY
WBOYオリジナル
2016-05-16 16:16:473111ブラウズ

HTML コードは次のとおりです:

コードをコピー コードは次のとおりです:


http://www.w3.org/1999/xhtml"> charset="UTF-8" >
程序员用HTML5制作的爱心树表白动画- 柯乐义http://keleyi.com/keleyi/phtml/html5/" />
http://keleyi.com/keleyi/phtml/html5/31/renxi/default.css">






本页面采用HTML5技术,目前您的浏览器无法显示,请使用支持HTML5的浏览器查看本页。




亲爱的何文琪:



曾经,

有一份真挚的爱情摆在我面前,

我没有珍惜,

等到我失去的时候才后悔莫及,
   
人世间最痛苦的事莫过于此......

如果上天能够给我一个再来一次的机会,

我会对那个女孩子说六个字:

何文琪我爱你!

如果非要在这份爱上加一个期限,

我希望是.....

一万年!

-- 爱你的柯乐义--










<スクリプト>
(関数(){
var Canvas = $('#ke' 'leyi');
if (!canvas[0].getContext) {
$("#error").show();
false を返します。 }
var width = Canvas.width();
var height = Canvas.height();
Canvas.attr("幅", 幅);
Canvas.attr("高さ", 高さ);
var opts = {
シード: {
x: 幅 / 2 - 20、
カラー: "rgb(190, 26, 37)",
スケール: 2
}、
ブランチ: [
[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]
]]
]]
]、
ブルーム: {
数値: 700、
幅: 1080、
身長: 650、
}、
フッター: {
幅: 1200、
高さ: 5、
スピード: 10、
}
}
vartree = new Tree(canvas[0], width, height, opts);
var シード = ツリー.シード;
var foot =tree.footer;
varhold = 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)) {
ホールド = 0;
Canvas.unbind("クリック");
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 () {
シード.draw();
while (長押し) {
$await(Jscex.Async.sleep(10));
}
while (seed.canScale()) {
シード.スケール(0.95);
$await(Jscex.Async.sleep(10));
}
while (seed.canMove()) {
シード.move(0, 2);
foot.draw();
$await(Jscex.Async.sleep(10));
}
}));
var throwAnimate = eval(Jscex.compile("async", function () {
{
を実行します Tree.grow();
$await(Jscex.Async.sleep(10));
while (tree.canGrow());
}));
var flowAnimate = eval(Jscex.compile("async", function () {
{
を実行します 木.花(2);
$await(Jscex.Async.sleep(10));
while (tree.canFflower());
}));
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("背景", "url(" Tree.toDataURL('image/png') ")");
Canvas.css("背景", "#ffe");
$await(Jscex.Async.sleep(300));
Canvas.css("背景", "なし");
}));
var JumpAnimate = eval(Jscex.compile("async", function () {
var ctx = ツリー.ctx;
while (true) {
Tree.ctx.clearRect(0, 0, width, height);
ツリー.ジャンプ();
foot.draw();
$await(Jscex.Async.sleep(25));
}
}));
var textAnimate = eval(Jscex.compile("async", function () {
$("#code").show().typewriter();
}));
var runAsync = eval(Jscex.compile("async", function () {
$await(seedAnimate());
$await(growAnimate());
$await(flowAnimate());
$await(moveAnimate());
textAnimate().start();
$await(jumpAnimate());
}));
runAsync().start();
})();


适用浏览器:360、FireFox、Chrome、Safari、Opera、傲游、搜狗、世界之窗。 IE8 以下のブラウザはサポートされていません。





声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。