boxes的值为何会自动追加
var a=0;
window.onload = function() {
//获得外层以及每一个盒子
var container = document.getElementById('wrap');
var boxes = container.getElementsByTagName('div');
//运行瀑布流主函数
waterfall(container, boxes);
console.log(++a);
//模拟数据
var data = [{
"src": "1.png",
"title": "第一怪 竹筒当烟袋"
}, {
"src": "2.png",
"title": "第二怪 草帽当锅盖"
}];
//设置滚动加载
window.onscroll = function() {
//校验数据请求
if (getCheck()) {
//var wrap = container;
for (i in data) {
//创建figure
var figure = document.createElement('div');
container.appendChild(figure);
//创建img
var img = document.createElement('img');
img.src = 'images/' + data[i].src;
//img.style.height = 'auto';
figure.appendChild(img);
//创建a标记
var a = document.createElement('a');
a.href = "http://www.imooc.com";
a.target = "_blank";
a.innerHTML = data[i].title;
figure.appendChild(a);
};
console.log(boxes.length);
waterfall(container, boxes);
};
};
};
滚动追加元素后,boxes的值为什么也会自动追加呢?
jQuery
window.onload=function(){
var warp=$('#container'),
box=warp.children('div');
waterfall(warp,box);
var data = [{
"src": "1.png",
"title": "第一怪 竹筒当烟袋"
}, {
"src": "2.png",
"title": "第二怪 草帽当锅盖"
}];
//追加图片
$(document).scroll(function(){
if($(this).scrollTop()+$(window).height()>=$(this).height()){
for(var i=0;i<data.length;i++){
warp.append('<div><a href="#"><img src="img/'+data[i].src+'" alt=""><span>'+data[i].title+'</span></a></div>');
}
box=warp.children('div');//有什么办法可以像js一样省掉这一步
waterfall(warp,box);
}
});
};
正在回答
var boxes = container.getElementsByTagName('div');”获取到的是个数组对象,可以按照你的第二种方式理解的
- 参与学习 人
- 提交作业 11218 份
- 解答问题 36713 个
从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星