canvas适应全屏动画鼠标移动有线条互动

2025-11-22 08:40:42

1、准备好需要用到的图标。

canvas适应全屏动画鼠标移动有线条互动

2、新建html文档。

canvas适应全屏动画鼠标移动有线条互动

3、书写hmtl代码。

<div class="container demo-1">

        <div class="content">

            <div id="large-header" class="large-header">

                <canvas id="demo-canvas"></canvas>

                <h1 class="main-title">Connect <span class="thin">Three</span></h1>

            </div>

        </div>

    </div>

canvas适应全屏动画鼠标移动有线条互动

4、书写css代码。

.large-header { position: relative; width: 100%; background: #333; overflow: hidden; background-size: cover; background-position: center center; z-index: 1; }

.demo-1 .large-header { background-image: url('../images/demo-1-bg.jpg'); }

.main-title { position: absolute; margin: 0; padding: 0; color: #f9f1e9; text-align: center; top: 50%; left: 50%; -webkit-transform: translate3d(-50%, -50%, 0); transform: translate3d(-50%, -50%, 0); }

.demo-1 .main-title { text-transform: uppercase; font-size: 4.2em; letter-spacing: 0.1em; }

.main-title .thin { font-weight: 200; }

 @media only screen and (max-width : 768px) {

.demo-1 .main-title,  .demo-3 .main-title,  .demo-4 .main-title { font-size: 3em; }

.demo-2 .main-title { font-size: 4em; }

}

canvas适应全屏动画鼠标移动有线条互动

5、书写并添加js代码。

<script src="js/TweenLite.min.js"></script>

    <script src="js/EasePack.min.js"></script>

    <script>

(function() {

    var lastTime = 0;

    var vendors = ['ms', 'moz', 'webkit', 'o'];

    for(var x = 0; x < vendors.length && !window.requestAnimationFrame; ++x) {

        window.requestAnimationFrame = window[vendors[x]+'RequestAnimationFrame'];

        window.cancelAnimationFrame = window[vendors[x]+'CancelAnimationFrame']

            || window[vendors[x]+'CancelRequestAnimationFrame'];

    }

    if (!window.requestAnimationFrame)

        window.requestAnimationFrame = function(callback, element) {

            var currTime = new Date().getTime();

            var timeToCall = Math.max(0, 16 - (currTime - lastTime));

            var id = window.setTimeout(function() { callback(currTime + timeToCall); },

                timeToCall);

            lastTime = currTime + timeToCall;

            return id;

        };

    if (!window.cancelAnimationFrame)

        window.cancelAnimationFrame = function(id) {

            clearTimeout(id);

        };

}());

</script>

    <script src="js/demo-1.js"></script>

canvas适应全屏动画鼠标移动有线条互动

6、代码整体结构。

canvas适应全屏动画鼠标移动有线条互动

7、查看效果。

canvas适应全屏动画鼠标移动有线条互动

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢