jQuery 动画

作者: LiLi原上草 | 来源:发表于2018-05-10 18:35 被阅读0次

最近有一官网的需求要来,想想,为了更好的照顾那些石器时代的人使用的浏览器,还是考虑用jquery来做了;因为好久没有用jQ了,感觉都有点遗忘了,正好官网上也有要实现的动画,就随手写了两小示例,做个随手笔记吧;

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"/>
    <title></title>
    <style type="text/css">
        * {padding:0; margin: 0;}
        #banner{
            float: left;
            margin-left: 100px;
        }
        #animation{
            float: left;
            margin-left: 100px;
            margin-top: 50px;
        }
        .backBox {
            border: 2px solid red;
            width: 200px;
            height: 500px;
            margin : 50px auto; 
            position: relative;
        }
        .movingNode {
            width: 200px;
            height: 100px;
            display: block;
            line-height: 120px;
            position: absolute;
        }
        .movingNode p {
            display: inline-block;
            height: 40px;
            width: 100%;
            background-color: green;
        }
        ul {
            position: relative;
        }
        ul li {
            position: absolute;
            list-style: none;
            height: 200px;
            width: 200px;
        }
    </style>
    <script type="text/javascript" src="./jquery-3.2.1.js"></script>
</head>
<body>
    <div id="banner">
        <div class="backBox">
        </div>
    </div>
    <div id="animation">
        <ul>
            <li style="background-color: red; display: block"></li>
            <li style="background-color: yellow; display: none"></li>
            <li style="background-color: blue; display: none"></li>
            <li style="background-color: pink; display: none"></li>
        </ul>
    </div>
</body> 

</html>
<script type="text/javascript">
    let parent = $('.backBox');
    let imgs = $('li');
    let moveNode = `<span class="movingNode"><p></p></span>`

    upwardRound(parent, moveNode, 800, 100);
    chengImgGif(imgs, 1000);
    
    function upwardRound (parentNode, moveNode, speed, height) {
        let no = setInterval(function () {
            creatMoveItem();
        }, speed);

        function creatMoveItem () {
            let movingNode = $(moveNode);
            movingNode.css({
                'top': height * 4 + 'px',
                'opacity': '0'
            });
            parentNode.append(movingNode);

            movingNode
            .animate({
                'opacity': '1',
                'top':  height * 3 + 'px'
            }, speed, 'linear', function () {
                
            })
            .animate({
                'top': height + 'px'
            }, speed*2, 'linear', function () {
                
            })
            .animate({
                'opacity': '0',
                'top': '0'
            }, speed, 'linear', function () {
                movingNode.remove();
            })
        }
    }

    function chengImgGif(nodes, IntervalTime) {
        let count = 0;
        let no1 = setInterval(function () {
            changeImg(nodes);
        }, IntervalTime);

        function changeImg (nodes) {
            count ++;
            if (count == nodes.length) {
                count = 0;
            }
            for (let i = 0; i < imgs.length; i ++) {
                $(imgs[i]).css('display', 'none');
            }
            $(imgs[count]).css('display', 'block');
        }
    }
     
</script>

相关文章

  • jquery动画和循环

    jquery特殊效果 jquery动画 jquery循环

  • jQuery特殊效果

    jQuery特殊效果 jQuery动画

  • jQuery 效果

    目录 jQuery 隐藏/显示jQuery 淡入淡出jQuery 滑动jQuery 动画jQuery Callba...

  • JQuery动画,事件

    jQuery 动画 - animate() 方法 jQuery animate() 方法用于创建自定义动画。 语法...

  • jQuery动画、循环

    1、jQuery特殊效果 2、jQuery动画 3、jQuery循环

  • JS-17day

    1、jQuery特殊效果 2、jQuery动画 3、jQuery循环

  • JQuery:动画

    jquery动画:

  • jQuery动画

    jQuery动画

  • jQuery动画队列

    jQuery 动画队列 当在jQuery对象上调用动画方法时,如果对象正在执行某个动画效果,那么新调用的动画方法就...

  • jquery实战

    jQuery属性操作 jQuery特殊效果 jQuery动画 jQuery循环 jQuery其他事件 自定义事件

网友评论

    本文标题:jQuery 动画

    本文链接:https://www.haomeiwen.com/subject/ymstdftx.html