最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript實現瀑布流圖片效果

 更新時間:2021年09月17日 08:27:39   作者:jasonduanmu  
這篇文章主要為大家詳細介紹了JavaScript實現瀑布流圖片效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了js實現瀑布流圖片效果的具體代碼,供大家參考,具體內容如下

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title></title>
  <style type="text/css">
    *{
      margin: 0;
      padding: 0;
    }
    #wrap{
      position: relative;
      list-style: none;
      margin: 0 auto;
    }
    #wrap li{
      width: 200px;
      font-size: 1.5rem;
      position: absolute;
      background-color: #CCCCCC;
      -webkit-transition: all 2s;
    }
    #wrap li div{
      width: 100%;
      height: 100%;
      overflow: hidden;
    }
  </style>
</head>
<body>
<ul id="wrap"></ul>
</body>
<script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
function randomFunction(max , min){
  return parseInt(Math.random() * (max - min)) + min;
}
var wrapUL = document.getElementById("wrap");
var width = 200;
var rightPadding = 10;
var hs = [];
var num = 0;
function setLiPos(bol){
  var lis = wrapUL.getElementsByTagName("li");
  var windowBody = document.documentElement.clientWidth;
  var cols = parseInt(windowBody / width);
  wrapUL.style.width = cols * (width + rightPadding) + "px";
  var arrT = [];
  for (var i = 0; i < cols; i++) {
    arrT[i] = 0;
  }
  function createLi(index){
    var li = lis[index]||document.createElement("li");
     
    var h = hs[index] || randomFunction(100, 300);
    li.style.height = h + "px";
    if(bol){
      hs.push(h);
    }
    var min = arrT[0];
    var minIndex = 0;
    for (var i = 0; i < arrT.length; i++) {
      if(min > arrT[i]){
        min = arrT[i];
        minIndex = i;
      }
    }
    li.style.top = arrT[minIndex] + "px";
    li.style.left = minIndex * (width + rightPadding) + "px"; arrT[minIndex] += (h + rightPadding);
    bol&&wrapUL.appendChild(li);
  }
  for(var i = 0; i < 20; i++){
    if(bol){
      num++;
    }
    createLi(i);
  }
}
setLiPos(true);
window.onresize = function(){
  setLiPos(false);
}
});
</script>
<script type="text/javascript">
$(function(){
  var imgArr = ["1.jpg","2.jpg","3.jpg","4.jpg","5.jpg","6.jpg","7.jpg"];
  $("li").each(function(index, el) {
    var n = RandomNumBoth(0,imgArr.length-1);
    var imgsrc = imgArr[n];
    $(this).html("<div><img onload='loadImage()' src='"+imgsrc+"'></div>");
  });
});
function loadImage(){
  $("img").each(function(index, el) {
    var a=$(this).width(),
    b=$(this).height(),
    pa = $(this).parent().width(),
    pb = $(this).parent().height(),
    e=a/b, //圖片寬高比 3
    pe=pa/pb; //承載圖片容器寬高比 
    if(e>=pe){
      $(this).css({height:"100%",width:"auto"});
      var imgW = $(this).width(),
      iW = $(this).parent().width(),
      w = -(imgW - iW)/2;
      $(this).css('marginLeft',w);
    }else{
      $(this).css({width:"100%",height:"auto"});
      var imgH = $(this).height(),
      iH = $(this).parent().height(),
      h = -(imgH - iH)/2;
      $(this).css('marginTop',h);
    }
  });
}
function RandomNumBoth(Min,Max){
   var Range = Max - Min;
   var Rand = Math.random();
   var num = Min + Math.round(Rand * Range);
   return num;
}
</script>
</html>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

最新評論

遂溪县| 台东县| 二连浩特市| 剑川县| 新营市| 信丰县| 金湖县| 建昌县| 黑山县| 许昌县| 邓州市| 平乐县| 西乌珠穆沁旗| 长葛市| 新巴尔虎右旗| 来凤县| 专栏| 巴青县| 阿拉善左旗| 鄂尔多斯市| 伊春市| 安顺市| 黄石市| 桂东县| 特克斯县| 莱西市| 乌海市| 略阳县| 杭州市| 鹿邑县| 卢龙县| 新和县| 天峨县| 南乐县| 通化市| 鹤岗市| 宁强县| 利辛县| 安西县| 盐亭县| 司法|