html5怎样在页面中加入雪花效果

html-css021

html5怎样在页面中加入雪花效果,第1张

在后台添加js特效可实现这样的效果。

js代码为:

<script language="JavaScript">

<!--

var no = 5//雪片数目

var speed = 20//飘动速度。(值越大越慢)

var ns4up = (document.layers) ? 1 : 0//当前浏览器类型,如果是NS则为1

var ie4up = (document.all) ? 1 : 0//当前浏览器类型,如果是IE则为1

var s, x, y, sn, cs

var a, r, cx, cy

var i, doc_width = 800, doc_height = 600

x = new Array()

y = new Array()

r = new Array()

cx = new Array()

cy = new Array()

s = 8//每次下落的高度,越小越平滑,但是也越慢

if (ns4up) { //以NS兼容方式

doc_width = self.innerWidth//取页面宽度

doc_height = self.innerHeight//取页面高度

}

else

if (ie4up) { //以IE兼容方式

doc_width = document.body.clientWidth//取页面宽度

doc_height = document.body.clientHeight//取页面高度

}

for (i = 0i <no++ i) { //根据前面定义的雪片数目写进相应数目的层

initSnow()//随机初始化层的坐标

if (ns4up) { //如果浏览器是NS

//用layer作为雪片(星号)的容器

document.write("<layer name=\"dot"+ i +"\" left=\"1\" ")

document.write("top=\"1\" visibility=\"show\"><font color=\"red\">")

document.write("*</font></layer>")

}

else

if (ie4up) { //如果浏览器是IE

//用div作为雪片的容器

document.write("<div id=\"dot"+ i +"\" style=\"POSITION: ")

document.write("absoluteZ-INDEX: "+ i +"VISIBILITY: ")

document.write("visibleTOP: 15pxLEFT: 15px\"><font color=\"red\">")

document.write("*</font></div>")

}

}

//初始化雪片,生成随机坐标

function initSnow() {

a = 6

r[i] = 1

sn = Math.sin(a)

cs = Math.cos(a)

cx[i] = Math.random() * doc_width + 1

cy[i] = Math.random() * doc_height + 1

x[i] = r[i] * sn + cx[i]

y[i] = cy[i]

}

//计算雪花位置,从新位置上出现,看起来就像是新产生的一样。

function makeSnow() {

r[i] = 1

cx[i] = Math.random() * doc_width + 1

cy[i] = 1

x[i] = r[i] * sn + cx[i]

y[i] = r[i] * cs + cy[i]

}

//雪花下落的计算

function updateSnow() {

r[i] += s

x[i] = r[i] * sn + cx[i]

y[i] = r[i] * cs + cy[i]

}

//在NS浏览器上处理雪片下落的主程序

function SnowdropNS() {

for (i = 0i <no++ i) { //依次处理每片雪花

updateSnow()//下落

if ((x[i] <= 1) || (x[i] >= (doc_width - 20)) || (y[i] >= (doc_height - 20))) { //如果超出屏幕范围

makeSnow()//则调整雪片到新位置上

doc_width = self.innerWidth//更新页面宽度数据

doc_height = self.innerHeight//更新页面高度数据

}

document.layers["dot"+i].top = y[i]//改变层的Y坐标,应用新的位置

document.layers["dot"+i].left = x[i]//改变层的X坐标,应用新的位置

}

setTimeout("SnowdropNS()", speed)

}

//在IE浏览器上处理雪片下落的主程序

function SnowdropIE() {

for (i = 0i <no++ i) { //依次处理每片雪花

updateSnow()//下落

if ((x[i] <= 1) || (x[i] >= (doc_width - 20)) || (y[i] >= (doc_height - 20))) { //如果超出屏幕范围

makeSnow()//则调整雪片到新位置上

doc_width = document.body.clientWidth//更新页面宽度数据

doc_height = document.body.clientHeight//更新页面高度数据

}

document.all["dot"+i].style.pixelTop = y[i]//改变层的坐标,应用新的位置

document.all["dot"+i].style.pixelLeft = x[i]

}

setTimeout("SnowdropIE()", speed)//准备下一次下落过程。

}

if (ns4up) { //如果是NS

SnowdropNS()//调用SnowdropNS使雪片下落

}

else

if (ie4up) { //如果是NS

SnowdropIE()//调用SnowdropIE使雪片下落

}

-->

</script>

说明:可以根据自己的需求根据说明进行相应参数的修改

圣诞节代码如下:

1. 使用canvas功能绘制的简单圣诞树,在绘图板中绘制下面这个图形并不算什么难事,但是使用代码来生成这个圣诞树却需要一定的HTML5基础。

下面这个图形使用HTML5中的<canvas>标签来绘制,如果你熟悉HTML5,这对你来说轻而易举。

2. 雪花效果。jQuery的出现,让各种动画效果变得更加容易。比如,你可以通过jQuery、jQuery.snow.js插件以及少量的代码,就可以让页面中飘舞这雪花。

3. 一个非常漂亮的圣诞贺卡。该贺卡通过Construct2制作,然后通过c2runtime.js使得该贺卡可以直接在网页中运行。Construct2是一款用来制作HTML5应用的软件,拥有一个清晰直观、支持“拖拽”操作的开发环境,即使你没有任何编程经验也能开发自己的HTML5应用。

圣诞节:基督教纪念耶稣诞生的重要节日。亦称耶稣圣诞节、主降生节,天主教亦称耶稣圣诞瞻礼。耶稣诞生的日期,《圣经》并无记载。公元336年罗马教会开始在12月25日过此节。12月25日原是罗马帝国规定的太阳神诞辰。有人认为选择这天庆祝圣诞,是因为基督教徒认为耶稣就是正义、永恒的太阳。

5世纪中叶以后,圣诞节作为重要节日,成了教会的传统,并在东西派教会中逐渐传开。因所用历法不同等原因,各教派会举行庆祝的具体日期和活动形式也有差别。

圣诞节习俗传播到亚洲主要是在十九世纪中叶,日本、韩国等都受到了圣诞文化的影响。现在西方在圣诞节常互赠礼物,举行欢宴,并以圣诞老人、圣诞树等增添节日气氛,已成为普遍习俗。圣诞节也成为西方世界以及其他很多地区的公共假日。