java 网页 特效,一个超炫的网页特效!
原标题:一个超炫的网页特效!
像这样的比较酷的特效,你肯定见过不少吧!但是你自己能用代码写出来么?那么一起来看看吧(下附源码!)
HTML部分
canvas id=canvas style=background:#111/canvas
//没错,就只有一个画布,如此简单!
CSS部分
*{padding:0;margin:0}
html{overflow:hidden}
//css代码也比较少。
Java部分
window. = function(){
//获取画布对象
var canvas = document.getElementById(canvas);
//获取画布的上下文
var context =canvas.getContext(2d);
//获取浏览器屏幕的宽度和高度
var W = window.innerWidth;
var H = window.innerHeight;
//设置canvas的宽度和高度
canvas.width = W;
canvas.height = H;
//每个文字的字体大小
var fontSize = 16;
//计算列
var colunms = Math.floor(W /fontSize);
//记录每列文字的y轴坐标
var drops = [];
//给每一个文字初始化一个起始点的位置
for(var i=0;icolunms;i++){
drops.push(0);
}
//运动的文字
var str =java html5 canvas;
//4:fillText(str,x,y);原理就是去更改y的坐标位置
//绘画的函数
function draw(){
context.fillStyle = rgba(0,0,0,0.05);
context.fillRect(0,0,W,H);
//给字体设置样式
context.font = 700 +fontSize+px 微软雅黑;
//给字体添加颜色
context.fillStyle =#00cc33;//可以rgb,hsl, 标准色,十六进制颜色
//写入画布中
for(var i=0;icolunms;i++){
var index = Math.floor(Math.random() * str.length);
var x = i*fontSize;
var y = drops[i] *fontSize;
context.fillText(str[index],x,y);
//如果要改变时间,肯定就是改变每次他的起点
if(y = canvas.height Math.random() 0.99){
drops[i] = 0;
}
drops[i]++;
}
};
function randColor(){
var r = Math.floor(Math.random() * 256);
var g = Math.floor(Math.random() * 256);
var b = Math.floor(Math.random() * 256);
return rgb(+r+,+g+,+b+);
}
draw();
setInterval(draw,30);
};
//这部分代码比较多,但主要的特效也是友Java来完成的
页面总代码图
以上三部分就组成了整个页面,怎么样,自己尝试写一下把!
如果你喜欢这篇文章,可以关注作者搜狐号,每天都会有精彩web干货与你一同分享哦!返回搜狐,查看更多
责任编辑: