手机版

瀑布流布局分析:JS绝对定位

时间:2021-11-20 来源:互联网 编辑:宝哥软件园 浏览:

绝对定位模式下的瀑布流布局:1。布局1。包围区块盒的容器:的复制代码如下: div ID=' main '.第二分区。块框:复制代码如下: div class=' pin ' div class=' box ' img src=' http 3360。/images/G (1)。jpg '/div/div 3,初始化第一行/5个块框:复制代码如下: pin { padding : 15px 0 015px;向左浮动:} .box { padding: 10pxborder:1px固体# ccc} .box img { width:192pxheight:auto}效果:

二、思路:1。将父主菜单的样式:设置为水平居中。2.设置样式:每个块盒销的绝对定位。3.设置窗口滚动事件的监听功能:读取数据添加块框。JS实现:1-:获取父opa paint:1-:创建函数getClassObj()-通过父id和块盒类名获取包含块盒的数组。复制代码如下: var opa rent=document . getelementbyid(' main ');//父对象vara pin=getclassobj(oparant,pin);//获取数组apinvarnum=math . floor(document.documentelement.clientwidth/apin[0])。偏移量);//get-每行可容纳的块数-num[窗口宽度除以一个块宽度]opa rent . style . CSS text=' width 3360 ' ipinw * num ' px;margin:0 auto';//使用cssText属性为parent main添加居中样式:固定宽度自动水平外边距复制的代码如下:函数getclassobj (parent,class name){ varobj=parent . getelementsbyname(' * ');//获取父var pinS=[]的所有子集;//创建一个数组来存储类为className的(var i=0)的元素;iobj.lengthI) {//遍历子集,判断类名,按数组if (obj [I]。图钉,图钉。};返回pinS}2-:创建数组pinHArr-用于存储每列的高度;2-:for语句遍历每个块帧aPin[i],将第一个块数分配给数组pinHArr,并绝对定位超过一行中可容纳块数的块。2-:使用creation函数getminHIndex()-返回数组中的最小值复制代码如下: var pinHArr=[];//用于存储(var i=0)每一列中所有块的添加高度[此数组的长度随列数变化];iaPin.lengthI ){//遍历每个块元素varpinh=aPin [I]。阵列apin的偏置;//获取数组aPin {//pinharr [I]=pinh的第I块的可见宽度offset thight if(inum);//第一行中的num block框aPin被添加到数组pinharr } else { var Minh=math . min . apply(null,pinharr);//计算数组pinHArr中的最小值:Minh var Minh index=getminh index(pinHArr,Minh);//通过创建的getminHIndex()-minH index apin[I]获取数组pinHArr中最小值minH的索引。风格。位置='绝对';//设置绝对位移APin[I]. style . top=MInh ' px ';APin[I]. style . left=APin[minhINDEX]。offsetLeft ' px//aPin[i]块框高度pinharr [minh index]=apin [I]。添加数组的最小高元素时的偏移量;//添加块框后更新列高}}复制代码如下:函数getminhinindex(arr,Minh){ for(var I in arr){ if(arr[I]==Minh)return I;} }3:设置窗口滚动事件的监视器功能,读取数据添加块框。复制的代码如下: vardataint={ ' data ' :[{ ' src ' : ' g(1)]。jpg'},{'src' :' g (9)。jpg'},{ ' src ' : ' g(2). jpg .//一个临时数据对象//下面定义了窗口滚动事件监视函数window . on scroll=function(){ if(checkscroll side()){ var o parent=document . getelementbyid(' main ');//的父对象(var I=0;IDA tain . data . length;I){ var OpIn=document . create element(' div ');//创建一个添加元素节点pin oPin.className=' pin//添加类名属性opaprent . appendchild(oPin);//创建并添加子节点框varobox=document . create element(' div ');oBox.className=' boxopin . appendchild(ObOx);var oImg=document . create element(' img ');//创建并添加子节点imgoimg.src='。/images/'dataint.data [I]。srcobox . appendchild(oImg);}瀑布(' main ',' pin ');//将 封装到函数瀑布()中,将添加的节点添加到添加定位文档中。

}:}你好绿筠小姐3330函数checkscrolside(){ var opart=document。getelement byid(' main ');var aPin=getClassObj(不透明Pin):var last inh=apin[apin。长度-1].场外数学。地板。长度-1]).偏右/2://哼哼哼【中文】吴亚玲吴亚玲瀑布()]绿筠小姐:你好你好菲兰达(是阿云)var scroll top=文档。文档元素。向上滚动| |文档。尸体。滚动顶部;//范仲淹的儿子var文档h=文档。文档元素。客户端高度://柳井返回(最后一个顶级文档)?true : false/唉哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟阿忠是真的,你好瀑布()魏冄}976年~我爱你~沙吾提:(9501 .163 .com)

四、总结:此为让自己梳理一下思路,表达不太仔细连贯,仅供参考。五、完成后的超文本标记语言文件和射流研究…文件:html:index.html复制代码代码如下:DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN ' ' http://www .w3。org/TR/XHTML 1/DTD/XHTML 1-Transitional。DTD ' html xmlns=' http://www .w3。org/1999/XHTML ' hearteta http-equiv=' Content-Type ' Content=' text/html;charset=UTF-8 '/meta name=' anchor ' content='谁在乎?'/script type=' text/JavaScript ' src=' http :瀑布。js '//script title/title style type=' text/CSS ' * { padd : 0;margin :0 } # main { position : relative }。销{ padd : 15px 0 0 15pxfloat : left }。box { padd : 10pxborder :1 px固体# cccbox-shadow : 0 6px # CCC;边界半径: 5px} .box img { width :162 ppxhway : auto }/style/head dydiv id=' main ' div class=' pin ' div class=' box ' img src=' http :/images/g (1).jpg '/div/div class=' pin ' div class=' box ' img src=' http :/images/g (2).jpg '/div/div class=' pin ' div class=' box ' img src=' http :/images/g (3).jpg '/div/div class=' pin ' div class=' box ' img src=' http :/images/g (4).jpg '/div/div class=' pin ' div class=' box ' img src=' http :/images/g (5).jpg '/div/div/div/body/html js:瀑布。js 1窗口。onload=function(){ 0复制代码代码如下:瀑布(“main”、“pin”);var Dataint={ ' data ' :[{ ' src ' : ' g(1)].jpg'},{'src':'g (9).jpg'},{'src':'g (2).jpg'},{'src':'g (4).jpg ' }]};窗户。onscroll=function(){ if(check scroll side()){ var opa rent=document。getelementbyid(' main ');//父级对象for(var I=0;艾达覃。数据。长度;I){ var OpIn=文档。创建元素(' div ');//添加元素节点opin . NAmE=' pin//添加类名名字属性奥帕伦特。append child(OpIn);//添加子节点var oBox=document。创建元素(' div ');oBox.className=' boxopin。append child(ObOx);var oImg=文档。创建元素(' img ');oImg.src=' ./images/' dataInt.data[i].斯考博克斯。append child(oImg);}瀑布(“main”、“pin”);};}}/*并行父级编号引脚元素id */函数瀑布(父,pin){ var Opaprent=document。getelementbyid(父);//父级对象var APin=GetClassObj(Opapine,pin);//获取存储块框别针的数组aPin var iPinW=aPin[0].offset with//一个块框别针的宽var num=数学。楼层(文件。文档元素。客户端宽度/IPinW);//每行中能容纳的别针个数【窗口宽度除以一个块框宽度】Opaprent。风格。CSS文本=' width : ' iPinW * num ' px'ma rgin :0 auto ';//设置父级居中样式:定宽自动水平外边距var PinHarr=[];//用于存储每列中的所有块框相加的高度。

S7-1200可编程控制器:iapin。长度(i ){//跸嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯嚯阿皮亚老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王老王var pinH=aPin[i].偏移高度;if(INM){ pinhar[I]=pinh;//卓克宏在一个魏冄引脚(引脚)魏冄else { var Minh=数学。量滴apply(null,pinhar);//唉哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟皮纳罗朱建安先生Minh var minhind ex=getminindex(pinhar,Minh);阿平[我]。风格。位置='绝对';//老陈阿平[我]。风格。top=Minh ' px ";阿平[我]。风格。左=apin[minhind ex].offsetleft ' px//唉哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟你好王振呢阿皮亚[i]嘿嘿嘿嘿嘿嘿pinhar[minhind ex]=apin[I].偏移高度;//维琴察维琴察维琴察维琴察维琴察维琴察维琴察维琴察维琴察维琴察维琴察维琴察维琴察维琴察维琴察维琴察维琴察维琴察维琴察维琴察} }} /**** *贺尔蒙贺尔蒙贺尔蒙类1860年范思哲范思哲*/函数getClassObj(父,类名){ var obj=parent。get element sbytname(' * ');//阿宽绿姊姊绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐绿姐姐var pin=[]://哼哼哼哼哼哼哼哼哼杨俊钦先生S7-1200可编程控制器:iobj。长度(i ) {//嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨你好你好你好哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟如果.类名==类名){ pin。推动;}:返回接点;} /**** *阿宽引脚(引脚)阿云朱建强,朱建强,朱建强,朱建强,朱建强,朱建强,朱建强,朱建强,朱建强,朱建强,朱建强,朱建强,朱建强,朱建强,朱建强,朱建强,朱建强index */函数getminindex(arr,Minh){ for(var I in arr){ if(arr[I]==Minh){ return I;} }函数校验和错误(){ var opart=document。get元素byid(' main ');var aPin=getClassObj(不透明Pin):var last inh=apin[apin。长度-1].场外数学。地板。长度-1]).偏右/2://哼哼哼【中文】吴亚玲吴亚玲瀑布()]绿筠小姐:你好你好菲兰达(是阿云)var scroll top=文档。文档元素。向上滚动| |文档。尸体。滚动顶部;//范仲淹的儿子var文档h=文档。文档元素。客户端高度://绿筠小姐返回(最后一个顶级文档)?true : false/唉哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟哟阿忠是真的,你好瀑布()魏冄}

版权声明:瀑布流布局分析:JS绝对定位是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。