主题1 )一种确定一个元素是否在窗口的可视范围内(浏览器的上边缘和下边缘之间,肉眼可见)的方法。 编写函数isVisible的实现
函数is visible ($ node ) {
varwindowheight=$(window ).height )、
scollTop=$(window ).scolltop ),
offsetTop=$node.offset ().top,
node height=$ node.outer height (true );
windowheightscolltopoffsettopoffsettopscolltopnodeheight ) {
返回真;
} else {
返回假;
}
}
主题2 )当窗口滚动时,判断某个要素是否出现在窗口的可视范围内。 每次出现都在控制台上打印true。 用代码实现
$box=$('.box ' );
$ (window.on )、scroll )、function ) }
if(isvisible($box ) ) }
console.log(true;
} else {
console.log(false;
}
);
函数is visible ($ node ) {
varwindowheight=$(window ).height )、
scrollTop=$(window ).scrolltop ) ),
offsetTop=$node.offset ().top,
node height=$ node.outer height (true );
windowheightscrolltopoffsettopscrolltopoffsettopnodeheight {
返回真;
} else {
返回假;
}
}
主题3 )当窗口滚动时,确定一个元素是否出现在窗口的可视范围内。 元素首次出现时在控制台上打印true,然后再次出现时不执行任何操作。 用代码实现
$box=$('.box ' );
$ (window.on )、scroll )、function ) }
if(isvisible($box ) ) }
console.log(true;
} else {
console.log(false;
}
);
函数is visible ($ node ) {
varwindowheight=$(window ).height )、
scrollTop=$(window ).scrolltop ) ),
offsetTop=$node.offset ().top,
node height=$ node.outer height (true );
windowheightscrolltopoffsettopscrolltopoffsettopnodeheight {
返回真;
} else {
返回假;
}
}
主题4 )照片懒惰加载的原理是什么?
如果图像的地址位于src属性中,则img标签会立即加载图像。
因此,懒惰读取图像的原理是,首先将图像地址放置在自定义属性data-src上,通过检测图像是否在窗口的可视范围内,将data-src上的地址分配给src,读取图像。
主题5 :实现视频图像的懒惰加载效果
如果主要看代码句柄并在github上预览效果,图像加载似乎很容易失败.
而且,我认为原因是防止图像归属网站连锁的问题。 解决方法是打上代码,图像就可以正常加载
image.png
主题6 :实现视频新闻的懒惰加载效果