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({
            width: bigWidth,
            height: bigHeight,
            left: -changeSize / 2,
            top: -heightChangeSize / 2
        }, time);
        var flag = 0;
        setInterval(function() {
            if (flag == 1) {
                flag = 0;
                $("#img1").animate({
                    width: bigWidth,
                    height: bigHeight,
                    left: -changeSize / 2,
                    top: -heightChangeSize / 2
                }, time);
            } else {
                flag = 1;
                $("#img1").animate({
                    width: 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;width: 100%;height: 100%;"/>

 

 html,body{
  overflow-y:hidden;
}

  如果在JS不生效,圖片的src地址也可以從后台用隨機數生成,效果是一樣的。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM