您的位置:首页 > 其它

20天的工作总结

2013-09-02 22:49 120 查看
最近做了一个项目。没有给具体完成时间,结果我就做了20多天,其实大部分是每天三四个小时。
里面的知识点还需要总结一下:

1. CORS(Cross-Origin Resource Sharing,跨域资源共享)

2. Json的parse 和 stringfy

3. 数组的去重复

var hash = {},newArr = [];

if(!hash[str]){

newArr.push(str);

hash[str] = true;

}


4. 数组去重后其他合并成子项obj。没有想到最优的办法,获取i然后重新循环,arr.slice(i,i+1) 选取其中一些部分

5. 每5个数组合并成一个字符串,用了do…while ,arr.splice(0,5).join(“”)

用do...while 操作里面的数组,数组会发生变化(如果注释不去掉的话,splice两下,数组会发生变化)

do{
//arr2.push(Math.max.apply(null,arr.splice(0,5)))
totalHeight += Math.max.apply(null,arr.splice(0,5)) + 5;
}
while(arr.length>0)


6. 页面滚动到最下的计算

7. 在srcoll 和 resize的时候用到的 throttle (debounce 与其相关)

8. 判断图片是否加载完成 ie: onreadState ; other: onload。并且图片加载完毕也是在for循环 ++到最后一条后,再执行其他function的

20131113

9.又改成了瀑布流,位置的计算(主要是第二个for循环的写法)

function sort(arr){
var top, column , gap = 20 , num = 4;
for(var i = 0 ; i < arr.length ; i++){
column = i%num;
var left = column*(arr[i].offsetWidth+gap);  //假如宽度不统一 也不能这样做
arr[i].style.left = left+"px";
top = 0;  //原来就是因为这个没有循环的时候变成0
if(i < num){
arr[i].style.top = "0px";
}else{
for(var j = column ; j < i ; j = j + num){
top = top + arr[j].offsetHeight;
}
arr[i].style.top = top+"px";
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: