-
瀑布流 原理: 数据加载的时候通过绝对定位来找到box的位置,而box的位置又是相对于main来定义的,所以main要用position:relative;来定义 特点: 等宽不等高查看全部
-
oBoxs[i].style.position='absolute'; oBoxs[i].style.left=oBoxs[0].offsetWidth*index+'px'; oBoxs[i].style.top=minValue+'px'; 设置属性值时里面的字符串不能加分号!查看全部
-
11111111查看全部
-
jQuery的:对象本质、支持连缀、隐式迭代 Jquery对象本质“可以看成”是一个包含一个 dom数组和所有Jquery方法的容器(补充:方法在所有jq对象共享的jq原型属性prototype中,Jquery对象本质是一个“类数组”)。所以一个dom节点元素或者js对象,如果不转换成Jquery对象,就不会包含Jquery方法,就无法使用jq的方法. 每当我们调用选择器方法获取dom树里的元素时,其实就是把找到的dom元素存入一个JQ对象里的dom数组中,然后再把这个JQ对象返回。 当我们调用Jquery方法时(如 html()),jq方法会遍历内部 dom数组,并调用每个dom元素的对应的dom属性或方法(如innerHTML),完成操作。 其中Jq方法遍历内部dom数组的过程就叫做【隐式迭代】。 【隐式迭代】 $(".A").addClass("B"); 像这样的就是隐式迭代 因为$(".A")选到的元素不一定只有一个 比如$(".A")选中10个元素 这10个元素都会加上"B"这个class 在jq中,所有的方法都被设计成自动操作对象集合,而不是单一的一个对象. 貌似除了ID选择器其它都是隐式迭代的(ID选择器只是将数组大小设置成为1而已,所以$("#A") 就算有多个id="A" 也只能得到第1个) ①scroll事件 $(window).on('scroll',function(){}); ②获取结果集中最后一个元素$('#main>div').last(); ③获取距离页面顶部的距离$lastBox.offset().top; js:offsetTop ④$(window).scrollTop();滚动条滚动的距离 ⑤$(window).height();浏览器可视窗口的高度 ⑥创建元素$('<div>'); ⑦插入元素append和appendTo查看全部
-
语法为: div.style.样式属性名称 = '属性值'查看全部
-
width查看全部
-
CSS3方式实现瀑布流特点查看全部
-
JS原生瀑布流查看全部
-
jQuery两大优点:支持连缀,隐式迭代查看全部
-
DOM对象不可能有jQuery,JS方法,要加$转化查看全部
-
各种浏览器的设置查看全部
-
jQuery的两大优点:支持连缀,隐式迭代查看全部
-
<script type="text/javascript" src="js/jquery-1.12.4.min.js"></script><--jQuery必须先于下边的js文件导入--> <script type="text/javascript" src="js/waterfall_jq.js"></script>查看全部
-
@瀑布流布局----2-5 JavaScript实现瀑布流布局中图片排序 【原理】用一个数组存放每列的高度,当有新的图片加进来时,新图片总是加在列高最小的那一列,新图片加进来后,数组中相应的列的高度也相应增加. 【要点】 1.求数组中最小值 Math.min()只能求一组数据的最小值,通过传参数列表,而不是数组。 借助apply()方法,1.将数组变为参数列表,2.改变函数中this的指向(本节课用不到此功能) Math.min.apply(null,hArr); 2.求最小值在数组中的索引 封装函数getIndex 3.图片定位(两种方法) position:absolute; top:minH+’px’; 1).left:oBoxW.index+’px’; 2).left:oBoxs[index].offsetLeft+’px’; 4.存放offsetHeight的数组值hArr要不断更改 在每次加入新图片后,最小高度的box加上定位在其下的box的offsetHeight ;即:hArr[index]+=oBoxs[i].offsetHeight;查看全部
-
apply()与call()使用详解(下) 4. Function1.apply(null,args): Function1:此函数的的参数不能为数组 null:没有特定的对象调用Function1,我们只是要Function1函数的计算结果. 使用情况:args参数不符合Function1函数的参数要求[函数不接受数组作为参数,只接受参数列表],调用apply()这个函数可以将args数组变为参数列表(argument0,argument1,argument2,…)以传递给函数Function1[这是apply函数的特点]. 以上四种情况,数组args内的数据顺便必须与Function1的参数顺序一致: args=[a,b,c,d,e,…] Function(a,b,c,d,e,…) call没有将数组改变为参数列表的功能,其他与apply一样,即: Function1.call(obj2,argument0,argument1,argument2,…) 或者 Function1.call(null,argument0,argument1,argument2,…)查看全部
举报
0/150
提交
取消