HTML中用JS实现旋转的圣诞树

 更新时间:2021年12月20日 15:29:17   作者:ZXW_NUDT  
这篇文章介绍了HTML中用JS实现旋转的圣诞树,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

<!DOCTYPE HEML PUBLIC>
<html>
    <head>
    <meta charset="utf-8">
    <title>
        From ZXW-NUDT
    </title>
        <style>
            body{text-align:center}
            html, body
            {
                width: 100%;
                height: 100%;
                margin: 0;
                padding: 0;
                border: 0;
            }
            
            div
            {
                margin: 0;
                padding: 0;
                border: 0;
            }

            .nav
            {
                position: absolute;
                top: 0;
                left: 0;
                width: 100%;
                height: 27px;
                background-color: white;
                color: black;
                text-align: center;
                line-height: 25px;
            }

            a
            {
                color: black;
                text-decoration: none;
                border-bottom: 1px dashed black;
            }

            a:hover
            {
                border-bottom: 1px solid red;
            }

            .previous
            {
                float: left;
                margin-left: 10px;
            }

            .next
            {
                float: right;
                margin-right: 10px;
            }

            .green
            {
                color: green;
            }

            .red
            {
                color: red;
            }

            textarea
            {
                width: 100%;
                height: 100%;
                border: 0;                
                padding: 0;                
                margin: 0;                
                padding-bottom: 20px;              
            }

            .block-outer            
            {                
                float: left;                
                width: 22%;                
                height: 100%;                
                padding: 5px;                
                border-left: 1px solid black;                
                margin: 30px 3px 3px 3px;                
            }

            .block-inner            
            {                
                height: 68%;                
            }

            .one
            {                
                border: 0;                
            }
        </style>
    </head>
<body marginwidth="0" marginheight="0">
    <canvas id="c" height="356" width="446">
    <script>
        var collapsed = true;
        function toggle()
        {
            var fs = top.document.getElementsByTagName('frameset')[0];
            var f = fs.getElementsByTagName('frame');
            if (collapsed)
            {
                fs.rows = '250px,*';
                fs.noResize = false;
                f[0].noResize = false;
                f[1].noResize = false;
            }

            else
            {
                fs.rows = '30px,*';
                fs.noResize = true;
                f[0].noResize = true;
                f[1].noResize = true;
            }
            collapsed = !collapsed;
        }
    </script>

    <script>
        var b = document.body;
        var c = document.getElementsByTagName('canvas')[0];
        var a = c.getContext('2d');
        document.body.clientWidth;
    </script>

    <script>
        M=Math;
        Q=M.random;J=[];
        U=16;
        T=M.sin;
        E=M.sqrt;
        for(O=k=0;x=z=j=i=k<200;)
        with(M[k]=k?c.cloneNode(0):c)
        {    
            width=height=k?32:W=446;
            with(getContext('2d'))
            if(k>10|!k)

            for(
            font='60px Impact',
            V='rgba(';I=i*U,fillStyle=k?k==13?V+'205,205,215,.15)':
            V+(147+I)+','+(k%2?128+I:0)+','+I+',.5)':'#cca',i<7;)

            beginPath(fill(arc(U-i/3,24-i/2,k==13?4-(i++)/2:8-i++,0,M.PI*2,1)));

            else for(;
            x=T(i),        
            y=Q()*2-1,        
            D=x*x+y*y,        
            B=E(D-x/.9-1.5*y+1),        
            R=67*(B+1)*(L=k/9+.8)>>1,        
            i++<W;        
            )

            if(D<1)    
            beginPath(strokeStyle=V+R+','+(R+B*L>>0)+',40,.1)'),        
            moveTo(U+x*8,U+y*8),        
            lineTo(U+x*U,U+y*U),        
            stroke();

            for(        
            y=H=k+E(k++)*25,        
            R=Q()*W;        
            P=3,j<H;)    
            J[O++]=[
                x+=T(R)*P+Q()*6-3,y+=Q()*U-8,
                z+=T(R-11)*P+Q()*6-3,
                j/H*20+((j+=U)>H&Q()>.8?Q(P=9)*4:0)>>1]
        }

        setInterval(function G(m,l)
        {    
            A=T(D-11);    
            if(l)

            return(        
            m[2]-l[2])*A+(l[0]-m[0])*T(D);        
            a.clearRect(0,0,W,W);        
            J.sort(G);

            for(
            i=0;
            L=J[i++];
            a.drawImage(M[L[3]+1],207+L[0]*A+L[2]*T(D)>>0,L[1]>>1))    
            {
                if(i==2e3)
                a.fillText
                ('Happy Christmas!',U,345);

                if(!(i%7))        
                a.drawImage(M[13],
                ((157*(i*i)+T(D*5+i*i)*5)%W)>>0,
                ((113*i+(D*i)/60)%(290+i/99))>>0);
            }    
            D+=.02
        },1)
    </script>
</body>
</html>

关于加上背景音乐的事情 假设和本html文件有个文件夹名字是music,文件夹下有个音频文件是music.mp3。那么代码应该为:

<audio src="music/music.mp3"  autoplay="autoplay" loop="loop"></audio>
  • src是地址
  • autoplay默认播放
  • loop默认循环

更换背景应该是(反正我没试过):

<div class="image"><img src="images.jpg" alt="" /></div><div class="content">

到此这篇关于HTML中用JS实现旋转的圣诞树的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 老生常谈JavaScript 函数表达式

    老生常谈JavaScript 函数表达式

    下面小编就为大家带来一篇老生常谈JavaScript 函数表达式。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-09-09
  • 一个JavaScript的求爱小特效

    一个JavaScript的求爱小特效

    本文做了一个JavaScript的求爱小特效,不仅能出现下面的图的效果,还可以让这个图形跟随着鼠标转动哦,需要的朋友可以参考下
    2014-05-05
  • JavaScript 函数的定义-调用、注意事项

    JavaScript 函数的定义-调用、注意事项

    这篇文章主要介绍了JavaScript 函数的定义-调用、注意事项,需要的朋友可以参考下
    2017-04-04
  • Intellij中直接运行ts配置方法:run configuration for typescript

    Intellij中直接运行ts配置方法:run configuration for typescript

    run configuration for typescript 插件本质还是依赖于ts-node来运行,只是其可以帮助我们自动配置好ts-node运行参数,简化使用,这篇文章给大家介绍在Intellij中可以借助插件run configuration for typescript直接运行typescript的方法,感兴趣的朋友一起看看吧
    2023-08-08
  • Bootstrap每天必学之缩略图与警示窗

    Bootstrap每天必学之缩略图与警示窗

    Bootstrap每天必学之缩略图与警示窗,对Bootstrap缩略图与警示窗小编也了解的很少,希望通过这篇文章和大家更多的去学习Bootstrap缩略图与警示窗,从中得到收获。
    2015-11-11
  • 修复bash漏洞的shell脚本分享

    修复bash漏洞的shell脚本分享

    这篇文章主要介绍了修复bash漏洞的shell脚本分享,本文脚本适应常见的linux服务器系统,如CentOS、Debian、Ubuntu、OpenSuSE、Aliyun等系统,需要的朋友可以参考下
    2014-12-12
  • JavaScript排序算法动画演示效果的实现方法

    JavaScript排序算法动画演示效果的实现方法

    下面小编就为大家带来一篇JavaScript排序算法动画演示效果的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-10-10
  • 鼠标左键单击冲突的问题解决方法(防止冒泡)

    鼠标左键单击冲突的问题解决方法(防止冒泡)

    一个页面实现了两种右键菜单,当鼠标左键单击空白处时,右键菜单并不隐藏,下面为大家解决鼠标左键单击冲突的问题
    2014-05-05
  • JavaScript中的垃圾回收与内存泄漏示例详解

    JavaScript中的垃圾回收与内存泄漏示例详解

    这篇文章主要给大家介绍了关于JavaScript中垃圾回收与内存泄漏的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用JavaScript具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-05-05
  • javascript实现评分功能

    javascript实现评分功能

    这篇文章主要为大家详细介绍了javascript实现评分功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-06-06

最新评论