日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

简约代码表白_JS实现520 表白简单代码

發布時間:2025/4/5 javascript 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 简约代码表白_JS实现520 表白简单代码 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這兩天不知道咋了,迷迷糊糊的,突然知道今天是520的我,急急忙忙趕出個程序(新手,代碼有點亂),發出來大家一起研究下(參考百度的)。

520

html, body{padding:0px; margin:0px; background:#222; font-family: 'Karla', sans-serif; color:#FFF; height:100%; overflow:hidden;}

canvas {width:100%; height:100%;}

#text,#text_520{font-family:'楷體'; color:rgb(255,255,3); font-size:20px; position:fixed; left:10%; top:10%;}

#text_520{font-size:100px; top:50%; left:50%;}

img{position:fixed; top:0; left:0; width:100%;}

#last{font-size:12px; bottom:10px; left:50%; position:fixed;}

/*

@keyframes drop {

0% {

transform: translateY(-100px);

opacity: 0;

}

90% {

opacity: 1;

transform:translateY(10px);

}

100% {

transform:translateY(0px;)

}

}

*/

5 2 0

版權所有:李曉珂

function isIE(){

var u = navigator.userAgent;

if((u.indexOf("compatible") > -1 && u.indexOf("MSIE") > -1) || (u.indexOf("Trident") > -1 && u.indexOf("rv:11.0") > -1)){

alert("該瀏覽器暫不支持,請更換瀏覽器");

window.open('','_self');

window.close();

}

var audio = document.createElement("audio");

audio.setAttribute("src","./520-love.mp3");

audio.setAttribute("autoplay","autoplay");

}

isIE();

var textArr = [

'I love three things in this world,',

'the sun ,the moon and you.',

'The sun for the day,',

'the moon for the night,',

'and you forever!',

'',

'If you were a teardrop,',

'in my eye,',

'for fear of losing you,',

'I would never cry.',

'And if the golden sun,',

'should cease to shine its light,',

'just one smile from you,',

'would make my whole world bright.'

];

var text_520 = document.getElementById('text_520');

var height = (window.innerHeight - text_520.offsetHeight) / 2;

var width = (window.innerWidth - text_520.offsetWidth) / 2;

text_520.style.top = height + 'px';

text_520.style.left = width + 'px';

$('#text_520').hide();

$('.img').hide();

var m = 0;

var n = 0;

var text = document.getElementById('text');

function typing(){

if(m <= textArr[n].length) {

text.innerHTML = text.innerHTML.substring(0,text.innerHTML.length-1) + textArr[n].substr(m++,1) + '_';

setTimeout(typing,250);

}else {

if(n < textArr.length-1){

text.innerHTML = text.innerHTML.substring(0,text.innerHTML.length-1) + "
_";

n++;

m = 0;

typing();

}else {

text.innerHTML = text.innerHTML.substring(0,text.innerHTML.length-1);

$('#text').fadeOut(5000);

setTimeout(function(){$('#text_520').fadeIn(5000);},7000);

setTimeout(function(){$('#text_520').fadeOut(5000); },7000);

setTimeout(function(){$('.img').fadeIn(50000);},15000)

}

}

}

setTimeout(typing,5000);

var ctx = document.querySelector('canvas').getContext('2d');

ctx.canvas.width = window.innerWidth;

ctx.canvas.height = window.innerHeight;

var sparks = [];

var fireworks = [];

var walker;

fireworks.pop();

var i = 10;

while(i--) fireworks.push(new Firework(Math.random()*window.innerWidth, window.innerHeight*Math.random()));

// setInterval(render, 1000/50);

render();

function render() {

setTimeout(render, 1000/50);

ctx.fillStyle = 'rgba(0, 0, 0, 0.2)';

ctx.fillRect(0, 0, ctx.canvas.width, ctx.canvas.height);

// 上升效果

for(var firework of fireworks) {

if(firework.dead) continue;

firework.move();

firework.draw();

}

// 綻放效果

for(var spark of sparks) {

if(spark.dead) continue;

spark.move();

spark.draw();

}

if(Math.random() < 0.1) fireworks.push(new Firework());

//ctx.height = ctx.height;

}

function Spark(x, y, color) {

this.x = x;

this.y = y;

this.dir = Math.random() * (Math.PI*2);

this.dead = false;

this.color = color;

this.speed = Math.random() * 3 + 3;

walker = new Walker({ radius: 20, speed: 0.25 });

this.gravity = 0.25;

this.dur = this.speed / 0.15;

this.move = function() {

this.dur--;

if(this.dur < 0) this.dead = true;

if(this.speed < 0) return;

if(this.speed > 0) this.speed -= 0.15;

walk = walker.step();

this.x += Math.cos(this.dir + walk) * this.speed;

this.y += Math.sin(this.dir + walk) * this.speed;

this.y += this.gravity;

this.gravity += 0.05;

}

this.draw = function() {

drawCircle(this.x, this.y, 2, this.color);

}

}

function Firework(x, y) {

this.xmove = Math.random()*2 - 1;

this.x = x || Math.random() * ctx.canvas.width;

this.y = y || ctx.canvas.height;

this.height = Math.random()*ctx.canvas.height/2;

this.dead = false;

this.color = randomColor();

this.move = function() {

this.x += this.xmove;

if(this.y > this.height) this.y -= 4;

else this.burst();

}

this.draw = function() {

drawCircle(this.x, this.y, 3, this.color)

}

this.burst = function() {

this.dead = true

i = 100; while(i--) sparks.push(new Spark(this.x, this.y, this.color));

sparks.pop();

}

}

setTimeout(function (){window.open('','_self').close();},175000);

/*

// 清除兩個數組

function clear(){

if(sparks!=null || fireworks!=null){

sparks.pop();

fireworks.pop();

}

var sparks = [];

var fireworks = [];

}

setInterval(clear,100);

*/

function drawCircle(x, y, radius, color) {

color = color || '#FFF';

ctx.fillStyle = color;

ctx.fillRect(x-radius/2, y-radius/2, radius, radius);

}

function randomColor(){

return ['#6ae5ab','#88e3b2','#36b89b','#7bd7ec','#66cbe1'][Math.floor(Math.random() * 5)];

}

function Walker(options){

this.step = function(){

this.direction = Math.sign(this.target) * this.speed

this.value += this.direction

this.target

? this.target -= this.direction

: (this.value)

? (this.wander)

? this.target = this.newTarget()

: this.target = -this.value

: this.target = this.newTarget()

return this.direction

}

this.newTarget = function() {

return Math.round(Math.random()*(this.radius*2)-this.radius)

}

this.start = 0

this.value = 0

this.radius = options.radius

this.target = this.newTarget()

this.direction = Math.sign(this.target)

this.wander = options.wander

this.speed = options.speed || 1

}

總結

以上所述是小編給大家介紹的JS實現520 簡單表白代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

總結

以上是生活随笔為你收集整理的简约代码表白_JS实现520 表白简单代码的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产视频在线免费观看 | 久久久久久久久精 | 天堂婷婷 | 一区二区不卡在线观看 | 长篇高h乱肉辣文 | 国产在线激情视频 | 日本福利在线 | 亚洲性猛交xxxx乱大交 | 99视频国产精品免费观看a | 成年人高清视频 | 久久爱99 | 99久久久无码国产精品性 | 黄色免费毛片 | 国产一区不卡在线观看 | 午夜欧美福利 | 国产chinese| 我们好看的2018视频在线观看 | 99热这里只有精品5 国产精品伦子伦免费视频 精品一二三 | 特级丰满少妇一级aaa爱毛片 | 综合色99 | 久久亚洲高清 | 精品成人免费一区二区在线播放 | 国产午夜精品理论片 | 欧美xxxx在线 | 九九热免费视频 | 日本a在线天堂 | 怡红院一区 | 国产精品第二十页 | 亚洲精品毛片av | 欧美日韩在线观看一区二区 | 色综合久久中文字幕无码 | 亚洲香蕉网站 | 五月六月丁香 | 国产欧美精品一区二区色综合朱莉 | 日本一区二区三区免费电影 | 奇米影视第4色 | 欧美伦理一区二区三区 | 免费手机av | 少妇高潮惨叫久久久久 | 午夜av网址 | 卡一卡二在线视频 | 最新天堂av | 申鹤乳液狂飙 | 中文字幕第一页亚洲 | 国产精品精华液网站 | 成人手机看片 | 国产成人午夜精品无码区久久 | 人妻视频一区 | 亚洲av片在线观看 | 法国经典free性复古xxxx | 亚洲高清久久 | 欧美视频中文字幕 | 在线超碰91| 精品国产一区二区三区四区阿崩 | 亚洲妇熟xx妇色黄蜜桃 | 欧美色xxxxx| 韩国在线不卡 | 国产免费毛卡片 | 国产精品理伦片 | 日韩特级毛片 | 亚洲精品成人片在线观看精品字幕 | 日本免费在线观看 | xvideos成人免费视频 | 不卡影院一区二区 | 91最新入口 | 亚洲一区有码 | 成人免费版 | 奇米久久久 | 91在线无精精品白丝 | 久久国产亚洲 | 少妇精品亚洲一区二区成人 | 亚洲国产剧情 | 久久综合狠狠综合久久综合88 | 射射射综合网 | 久久成人福利视频 | 一级片免费的 | www.黄色片.com | 国产高清一区二区三区 | 日韩三级不卡 | 国产肥熟 | 日本不卡一区视频 | 日韩精品成人一区二区在线 | 97色网| 亚洲大胆视频 | 日韩福利在线播放 | 香蕉视频免费在线观看 | 亚洲精品高清视频 | 九九精品在线观看 | 久久国产柳州莫菁门 | 深夜视频一区二区 | 香蕉网久久| 欧洲-级毛片内射 | 国产一二在线观看 | 美女视频黄色在线观看 | 久久激情视频 | 中国妇女做爰视频 | 久久综合干 | 日本免费一区二区三区最新 | 91秘密入口 |