zoukankan      html  css  js  c++  java
  • JS实现随机背景图片与图片大小变换的效果

      经常在网上见一些网站访问一次背景图片改变一次,而且图片的大小不停变换,于是想着自己研究一下。

      背景图片可以通过JS的随机数来改变图片的src来实现随机图片,图片的大小变换可以用JS的setInterval实现。

    img目录下的图片:

     测试代码:

    <!DOCTYPE html>
    <html>
    
        <head>
            <meta charset="UTF-8">
            <title></title>
            <script src="js/jquery-1.8.3.min.js"></script>
        </head>
    
        <body>
            <img id="img1" style="z-index: -1;position: absolute;left: 0;top: 0;" />
        </body>
    
    </html>
    <script>
        + function() {
            //设置初始化设置
            $("#img1").attr("src", "./img/" + getRandomSrc() + ".jpg");
            var width = window.innerWidth > 0 ? window.innerWidth : document.body.clientWidth; //宽度
            var height = window.innerHeight > 0 ? window.innerHeight : document.body.clientHeight; //高度
            $("#img1").attr("width", width);
            $("#img1").attr("height", height);
            //动画效果
            var changeSize = 100;
            var time = 3000;
            var heightChangeSize = changeSize * height / width;
            var bigWidth = width + changeSize;
            var bigHeight = height + heightChangeSize;
            $("#img1").animate({
                 bigWidth,
                height: bigHeight,
                left: -changeSize / 2,
                top: -heightChangeSize / 2
            }, time);
            var flag = 0;
            setInterval(function() {
                if (flag == 1) {
                    flag = 0;
                    $("#img1").animate({
                         bigWidth,
                        height: bigHeight,
                        left: -changeSize / 2,
                        top: -heightChangeSize / 2
                    }, time);
                } else {
                    flag = 1;
                    $("#img1").animate({
                         width,
                        height: height,
                        left: "0",
                        top: "0"
                    }, time);
                }
            }, time);
        }();
    
        function getRandomSrc() {
            var rnd = Math.ceil(Math.random() * 7);
            return rnd;
        }
    </script>

     结果可以实现每次访问图片src随机而且大小不停的变换。

    一般是在登录页使用上面的效果实现呼吸图的效果,如果纵向出现滚动条的话可以用下面css代码隐藏滚动条:

        <img id="img1" style="z-index: -1;position: absolute;left: 0;top: 0; 100%;height: 100%;"/>
     html,body{
      overflow-y:hidden;
    }

      如果在JS不生效,图片的src地址也可以从后台用随机数生成,效果是一样的。

  • 相关阅读:
    (转载)UITableView的详细讲解
    (转载)ios关闭虚拟键盘的几种方法
    (转载)NSTimer
    (转)FirstResponder 释放问题
    (转)IOS UITableView学习
    UITableView中的(NSIndexPath *)indexPath
    iOS开发UITableView基本使用方法总结1
    xcode快捷键的使用
    k8s1.13.0二进制部署-master节点(三)
    k8s1.13.0二进制部署-node节点(四)
  • 原文地址:https://www.cnblogs.com/qlqwjy/p/9877832.html
Copyright © 2011-2022 走看看