1. XenForo 1.5.14 中文版——支持中文搜索!现已发布!查看详情
  2. Xenforo 爱好者讨论群:215909318 XenForo专区

Classic Snow Fall - Java Script 雪花

本帖由 admin2012-12-03 发布。版面名称:精品源码

  1. admin

    admin 管理员 管理成员

    注册:
    2011-11-01
    帖子:
    3,671
    赞:
    2,425
    雪花效果 演示看本站
    代码:
    <SCRIPT type="text/javascript">
    /*
    Classic Snow Fall - Java Script
    */
    // Set the number of snowflakes (more than 30 - 40 not recommended)
    var snowmax=40
    // Set the colors for the snow. Add as many colors as you like
    var snowcolor=new Array("#aaaacc","#ddddff","#ccccdd","#f3f3f3","#f0ffff")
    // Set the fonts, that create the snowflakes. Add as many fonts as you like
    var snowtype=new Array("Times","Arial","Times","Verdana")
    // Set the letter that creates your snowflake (recommended: * )
    var snowletter="*"
    // Set the speed of sinking (recommended values range from 0.3 to 2)
    var sinkspeed=0.6
    // Set the maximum-size of your snowflakes
    var snowmaxsize=30
    // Set the minimal-size of your snowflakes
    var snowminsize=8
    // Set the snowing-zone
    // Set 1 for all-over-snowing, set 2 for left-side-snowing
    // Set 3 for center-snowing, set 4 for right-side-snowing
    var snowingzone=1
    ///////////////////////////////////////////////////////////////////////////
    // CONFIGURATION ENDS HERE
    ///////////////////////////////////////////////////////////////////////////
    // Do not edit below this line
    var snow=new Array()
    var marginbottom
    var marginright
    var timer
    var i_snow=0
    var x_mv=new Array();
    var crds=new Array();
    var lftrght=new Array();
    var browserinfos=navigator.userAgent
    var ie5=document.all&&document.getElementById&&!browserinfos.match(/Opera/)
    var ns6=document.getElementById&&!document.all
    var opera=browserinfos.match(/Opera/)
    var browserok=ie5||ns6||opera
    function randommaker(range) {
    rand=Math.floor(range*Math.random())
    return rand
    }
    function initsnow() {
    if (ie5 || opera) {
    marginbottom = document.body.scrollHeight
    marginright = document.body.clientWidth-15
    }
    else if (ns6) {
    marginbottom = document.body.scrollHeight
    marginright = window.innerWidth-15
    }
    var snowsizerange=snowmaxsize-snowminsize
    for (i=0;i<=snowmax;i++) {
    crds[I] = 0;[/I]
    [I]lftrght[I] = Math.random()*15;[/I][/I]
    [I]x_mv[I] = 0.03 + Math.random()/10;[/I][/I]
    [I]snow[I]=document.getElementById("s"+i)[/I][/I]
    [I]snow[I].style.fontFamily=snowtype[randommaker(snowtype.length)][/I][/I]
    [I]snow[I].size=randommaker(snowsizerange)+snowminsize[/I][/I]
    [I]snow[I].style.fontSize=snow[I].size+'px';[/I][/I][/I]
    [I]snow[I].style.color=snowcolor[randommaker(snowcolor.length)][/I][/I]
    [I]snow[I].style.zIndex=1000[/I][/I]
    [I]snow[I].sink=sinkspeed*snow[I].size/5[/I][/I][/I]
    [I]if (snowingzone==1) {snow[I].posx=randommaker(marginright-snow[I].size)}[/I][/I][/I]
    [I]if (snowingzone==2) {snow[I].posx=randommaker(marginright/2-snow[I].size)}[/I][/I][/I]
    [I]if (snowingzone==3) {snow[I].posx=randommaker(marginright/2-snow[I].size)+marginright/4}[/I][/I][/I]
    [I]if (snowingzone==4) {snow[I].posx=randommaker(marginright/2-snow[I].size)+marginright/2}[/I][/I][/I]
    [I]snow[I].posy=randommaker(2*marginbottom-marginbottom-2*snow[I].size)[/I][/I][/I]
    [I]snow[I].style.left=snow[I].posx+'px';[/I][/I][/I]
    [I]snow[I].style.top=snow[I].posy+'px';[/I][/I][/I]
    [I]}[/I]
    [I]movesnow()[/I]
    [I]}[/I]
    [I]function movesnow() {[/I]
    [I]for (i=0;i<=snowmax;i++) {[/I]
    [I]crds[I] += x_mv[I];[/I][/I][/I]
    [I]snow[I].posy+=snow[I].sink[/I][/I][/I]
    [I]snow[I].style.left=snow[I].posx+lftrght[I]*Math.sin(crds[I])+'px';[/I][/I][/I][/I][/I]
    [I]snow[I].style.top=snow[I].posy+'px';[/I][/I][/I]
    [I]if (snow[I].posy>=marginbottom-2*snow[I].size || parseInt(snow[I].style.left)>(marginright-3*lftrght[I])){[/I][/I][/I][/I][/I]
    [I]if (snowingzone==1) {snow[I].posx=randommaker(marginright-snow[I].size)}[/I][/I][/I]
    [I]if (snowingzone==2) {snow[I].posx=randommaker(marginright/2-snow[I].size)}[/I][/I][/I]
    [I]if (snowingzone==3) {snow[I].posx=randommaker(marginright/2-snow[I].size)+marginright/4}[/I][/I][/I]
    [I]if (snowingzone==4) {snow[I].posx=randommaker(marginright/2-snow[I].size)+marginright/2}[/I][/I][/I]
    [I]snow[I].posy=0[/I][/I]
    [I]}[/I]
    [I]}[/I]
    [I]var timer=setTimeout("movesnow()",50)[/I]
    [I]}[/I]
    [I]for (i=0;i<=snowmax;i++) {[/I]
    [I]document.write("<span id='s"+i+"' style='position:absolute;top:-"+snowmaxsize+"'>"+snowletter+"</span>")[/I]
    [I]}[/I]
    [I]if (browserok) {[/I]
    [I]window.onload=initsnow[/I]
    [I]}[/I]
    [I]</SCRIPT>[/I]
    [I]<script type="text/javascript">[/I]
    [I]//<![CDATA[[/I]
     
    [I]window.orig_onload = window.onload;[/I]
    [I]window.onload = function() {[/I]
    [I]if (is_ie || is_moz) { var cpost=document.location.hash;if(cpost){ if(cobj = fetch_object(cpost.substring(1,cpost.length)))cobj.scrollIntoView(true); }}[/I]
     
    [I]if(typeof window.orig_onload == "function") window.orig_onload();[/I]
    [I]}[/I]
     
    [I]//]]>[/I]
    [I]</script>[/I]
     
  2. hagcse

    hagcse XF认证会员

    注册:
    2012-03-18
    帖子:
    25
    赞:
    1
    适用方法呢? 放在哪里咩?:(
     
  3. admin

    admin 管理员 管理成员

    注册:
    2011-11-01
    帖子:
    3,671
    赞:
    2,425
    footer最下面~~
     
正在加载...