效果图:

代码:

HTML:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<link rel="stylesheet" type="text/css" href="Untitled-2.css">
<script src="Untitled-3.js"></script>
</head>

<body>
<div id="container">

<div class="box">
<div class="box-img">
<img src="图片/IMG_20160718_161944.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-1b00715b51c94795859ccb8d2aa82395.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-0ce66d19d9883db7d699a5e8b5594446.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-4a42fa1757318547c9bae32e818e867d.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-703fa08f5cbcc824355f275d07e1d2a6.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-aa6d8970538b5422f640522ec93d113b.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-89ea89c2f255b8a885058c1bd3053369.jpg" />
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/IMG_20160718_161944.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-1b00715b51c94795859ccb8d2aa82395.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-0ce66d19d9883db7d699a5e8b5594446.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-4a42fa1757318547c9bae32e818e867d.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-703fa08f5cbcc824355f275d07e1d2a6.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-aa6d8970538b5422f640522ec93d113b.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-89ea89c2f255b8a885058c1bd3053369.jpg" />
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-9d13cdcd0196ad5b85125f47400f8bda.jpg" />
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-905cd98f5759d2cee3dd2ddf30070f66.jpg" />
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/IMG_20160718_161944.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-1b00715b51c94795859ccb8d2aa82395.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-0ce66d19d9883db7d699a5e8b5594446.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-4a42fa1757318547c9bae32e818e867d.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-703fa08f5cbcc824355f275d07e1d2a6.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-aa6d8970538b5422f640522ec93d113b.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-89ea89c2f255b8a885058c1bd3053369.jpg" />
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-9d13cdcd0196ad5b85125f47400f8bda.jpg" />
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-4a42fa1757318547c9bae32e818e867d.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-703fa08f5cbcc824355f275d07e1d2a6.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-aa6d8970538b5422f640522ec93d113b.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-905cd98f5759d2cee3dd2ddf30070f66.jpg" />
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/IMG_20160718_161944.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-1b00715b51c94795859ccb8d2aa82395.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-0ce66d19d9883db7d699a5e8b5594446.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-4a42fa1757318547c9bae32e818e867d.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-703fa08f5cbcc824355f275d07e1d2a6.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-aa6d8970538b5422f640522ec93d113b.jpg">
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-89ea89c2f255b8a885058c1bd3053369.jpg" />
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-9d13cdcd0196ad5b85125f47400f8bda.jpg" />
</div>
</div>

<div class="box">
<div class="box-img">
<img src="图片/img-905cd98f5759d2cee3dd2ddf30070f66.jpg" />
</div>
</div>
</div>
</body>
</html>

css:

@charset "utf-8";
/* CSS Document */

*{
margin:0px;
padding:0px;
}

#container{
position:relative;

}

.box{
padding:5px;
float:left;
}
.box-img{
padding:5px;
boder:1px solid #cccccc;
box-shadow:0 0 5px #ccc;
boder-radius:5px;
}
.box-img img{
width:150px;
height:auto;

}

js:

// JavaScript Document
window.onload=function(){
imgLocation("container","box");
var imgData={"data":[{"src":"img-703fa08f5cbcc824355f275d07e1d2a6.jpg"},{"src":"img-703fa08f5cbcc824355f275d07e1d2a6.jpg"},{"src":"img-703fa08f5cbcc824355f275d07e1d2a6.jpg"},{"src":"img-703fa08f5cbcc824355f275d07e1d2a6.jpg"},{"src":"IMG_20160718_161944.jpg"}]};
window.onscroll=function(){
if(checkFlag()){
var cparent=document.getElementById("container");
for(var i=0;i<imgData.data.length;i++){
var ccontent=document.createElement("div");
ccontent.className="box";
cparent.appendChild(ccontent);
var boximg=document.createElement("div");
boximg.className="box-img";
ccontent.appendChild("boximg");
var img=document.createElement("img");
img.src="file:///C|/Users/lenovo/Desktop/网页设计/图片/"+imgDate.date[i].src;
boximg.appendChild(img);
}
imgLocation("container","box");
}
}
}
function checkFlag(){
var cparent=document.getElementById("container");
var ccontent=getChildElement(cparent,"box");
var lastContentHeight=ccontent[ccontent.length-1].offsetTop;
var scrollTop=document.documentElement.scrollTop||document.body.scrollTop;
var pageHeight=document.documentElement.clientHeight||document.body.clientHeight;
if(lastContentHeight<scrollTop+pageHeight){
return true;
}

}

//获得屏幕图片数量
function imgLocation(parent,content){
//父级parent的内容全部取出(既取BOX)
var cparent=document.getElementById(parent);
var ccontent=getChildElement(cparent,content);
//console.log(ccontent);盒子个数
var imgWidth=ccontent[0].offsetWidth;//图片的宽度
var m=document.documentElement.clientWidth;//屏幕的有效宽度
var cols=Math.floor(m/imgWidth);//屏幕宽度除以图片宽度
cparent.style.cssText="width:"+imgWidth*cols+"px;margin:0 auto";//container一行的宽度

var BoxHeightArr=[];
for(var i=0;i<ccontent.length;i++){
if(i<cols){
BoxHeightArr[i]=ccontent[i].offsetHeight;

}else{
var minheight=Math.min.apply(null,BoxHeightArr);
var minIndex=getminheightLocation(BoxHeightArr,minheight);
ccontent[i].style.position="absolute";//绝对
ccontent[i].style.top=minheight+"px";
ccontent[i].style.left=ccontent[minIndex].offsetLeft+"px";
BoxHeightArr[minIndex]=BoxHeightArr[minIndex]+ccontent[i].offsetHeight;
}
}
}
//
function getminheightLocation(BoxHeightArr,minHeight){
for(var i in BoxHeightArr){

if(BoxHeightArr[i]==minHeight){
return i;
}
}

}

//存储box
function getChildElement(parent,content){
var contentArr=[];
//通过父得到子集
var allcontent=parent.getElementsByTagName("*");
//className与“box相同”,堆加
for(var i=0;i<allcontent.length;i++){
if(allcontent[i].className==content){
contentArr.push(allcontent[i]);
}

}
return contentArr;
}

一个js加css加html完成的HTML的更多相关文章

  1. JS和CSS加载(渲染)机制不同

    一.结论 CSS可以在页面加载完成后随时渲染.举个例子:通过js给某个元素加一个id或者css,只要这个id或者css有对应的样式,此元素的样式就会自动生效. JS不可以在页面加载完成后生效.最明显的 ...

  2. 一个js文件如何加载另外一个js文件

    方法一,在调用文件的顶部加入下例代码: document.write(”<script language=javascript src=’/js/import.js’></scrip ...

  3. 经验总结:按需加载JS和css

    项目中做过这样的事情:所有页面都通过SSI指令 include这样一份public-js.shtml, 用来引入涉及到的js(包括公共的脚本 验证插件 自定义组件等),但是一些没有交互效果的页面根本不 ...

  4. 原生JS下拉加载插件分享。

    无聊写了一个JS下拉加载插件,有需要的可以下载. // 使用 // new ManDownLoad("#ul","json/load.json",functio ...

  5. 打开一个网站,加载顺序是什么?先加载HTML然后JS然后CSS?还是什么?

    HTML页面加载和解析流程 : 1. 用户输入网址(假设是个html页面,并且是第一次访问),浏览器向服务器发出请求,服务器返回html文件. 2. 浏览器开始载入html代码,发现<head& ...

  6. 常用js,css文件统一加载方法,并在加载之后调用回调函数

    原创内容,转载请注明出处! 为了方便资源管理和提升工作效率,常用的js和css文件的加载应该放在一个统一文件里面完成,也方便后续的资源维护.所以我用js写了以下方法,存放在“sourceControl ...

  7. 动态加载、移除、替换JS和CSS

    //动态加载一个js/css文件 function loadjscssfile(filename, filetype) { if (filetype == "js") { var ...

  8. ASP.NET MVC 5 默认模板的JS和CSS 是怎么加载的?

    当创建一个默认的mvc模板后,项目如下: 运行项目后,鼠标右键查看源码,在源码里看到头部和尾部都有js和css文件被引用,他们是怎么被添加进来的呢? 首先我们先看对应的view文件index.csht ...

  9. nginx实现动态分离,解决css和js等图片加载问题

    改帖专门为使用nginx,通过nginx把请求转发到web服务器再返回客户端的时候,解决css和js和图片加载不出来的问题. 如果没安装nginx,请访问一下地址进行安装 http://www.cnb ...

随机推荐

  1. 【leetcode】编辑距离

    dp方程“ 1.初始化:dp[0][i]=i; dp[j][0]=j; 2.dp[i][j]=         dp[i-1][j-1](相等) dp[i-1][j]+1 ,,dp[i][j-1]+1 ...

  2. JavaScript高级程序设计26.pdf

    DOM操作技术 动态脚本 指得是页面加载时不存在,但将来的某一时刻通过修改DOM动态添加的脚本,跟操作HTML元素一样,创建动态脚本也有2种方式:插入外部文件和直接插入JavaScript代码 var ...

  3. ASP.NET中设置一个定时器来定时更新 转

    asp.net 定时器 比较少用,  中国红木网这是一个相当实用的功能,有了RSS博客镜像,就不需要在多处同时发布博客日志了.比如你同时在新浪上有自己的博客,又同时有自己的个人博客站点,那么你只需要在 ...

  4. linux内核中经常用到的设备初始化宏

    内核使用了大量不同的宏来标记具有不同作用的函数和数据结构.如宏__init.__devinit等.这些宏在include/linux/init.h头文件中定义.编译器通过这些宏可以把代码优化放到合适的 ...

  5. ios 中的半屏幕底部弹出框

    static UIView *modalView;if (modalView) { [modalView removeFromSuperview]; modalView = nil; return; ...

  6. 多IDC数据分布--MySQL多机房部署 - 学习笔记 - 51CTO技术博客

    多IDC数据分布--MySQL多机房部署 - 学习笔记 - 51CTO技术博客 多IDC数据分布--MySQL多机房部署

  7. 【转】android多分辨率适配

    前一阶段开发android项目,由于客户要求进行多分辨率适配,能够支持国内主流的分辨率手机.因此经过了几次开发走了很多弯路,目前刚刚领略了android多分辨率适配的一些方法. 先介绍一下所走的弯路, ...

  8. PowerShell常用的.Net 、COM对象(New-Object、Assembly)、加载程序集

    #新建随机数对象实例:$Ran = New-Object System.Random$Ran.NextDouble() 有时候,要使用的实例的类保存在独立的库文件中,PowerShell默认未加载,会 ...

  9. hdu 1317 XYZZY【Bellheman_ford 判断正环小应用】

    链接: http://acm.hdu.edu.cn/showproblem.php?pid=1317 http://acm.hust.edu.cn/vjudge/contest/view.action ...

  10. PMP考试的过与只是

    我在一年多时间里參加了三次PMP考试,前两次都失败,直到第三次才成功.怎样对待失败?这是每个人都会遇到的挑战.假设我们能用正确的态度对待临时的失败,那么终于的成功也就不远了.我希望通过本文与大家分享一 ...