进阶16-懒加载

  • 题目1:如何判断一个元素是否出现在窗口可视范围(浏览器的上边缘和下边缘之间,肉眼可视)。写一个函数 isVisible实现

function isVisible($node){
var winH = $(window).height(),
offsetH = $e.offset().top,
scrollH = $(window).scrollTop()
if ((offsetH > scrollH) && (offsetH < scrollH + winH)) {
return true
}
return false
}

* 题目2:当窗口滚动时,判断一个元素是不是出现在窗口可视范围。每次出现都在控制台打印 true 。用代码实现

<p class="ppp">文字文字文字</p>
<script>
var $e = $(".ppp");
$(window).on("scroll",function(){
isVisible($e)
});
function isVisible($e){
var winHeight = $(window).height(),
WinTop = $(window).scrollTop(),
offsetTop = $e.offset().top
if(offsetTop < winHeight+WinTop){
console.log("位于可视区域内")
return true
}else{
return false
}
}
</script>


* 题目3:当窗口滚动时,判断一个元素是不是出现在窗口可视范围。在元素第一次出现时在控制台打印 true,以后再次出现不做任何处理。用代码实现

<p class="ppp">文字文字文字</p>
<script>
var $e = $(".ppp");
var flag = true;

function isVisible($e){
    var winHeight = $(window).height(),
        WinTop = $(window).scrollTop(),
        offsetTop = $e.offset().top
    if(offsetTop < winHeight+WinTop){
        return true
    }else{
        return false
    }
}
$(window).on("scroll",function(){
    //isVisible($e)
    if (isVisible($e) && flag) {
        console.log('true');
        flag = false;
    }
});

</script>


* 题目4: 图片懒加载的原理是什么?
答:
图片懒加载也称为曝光加载,将页面上的图片分批加载,只有当图片出现在window窗口中(用户可见)的时候,才加载图片;而正常情况下,img元素是自动加载的,所以可以自定义一个图片地址属性,当需要加载图片的时候,将该自定义属性值赋给src属性,以实现优化页面的渲染速度,图片延迟加载。

* 题目5: 实现视频中的图片懒加载效果
[在线预览](http://book.jirengu.com/jirengu-inc/jrg-renwu7/members/%E6%96%BD%E4%B8%9C%E7%85%8C/%E8%BF%9B%E9%98%B616/16-5.html)
* 题目6: 实现视频中的新闻懒加载效果
[本地测试无问题](http://book.jirengu.com/jirengu-inc/jrg-renwu7/members/%E6%96%BD%E4%B8%9C%E7%85%8C/%E8%BF%9B%E9%98%B616/16-6.html)
![Paste_Image.png](http://upload-images.jianshu.io/upload_images/2858982-1f1d985536db3c20.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1:如何判断一个元素是否出现在窗口可视范围(浏览器的上边缘和下边缘之间,肉眼可视)。写一个函数 isVisible...
    晓风残月1994阅读 300评论 0 0
  • 1. 如何判断一个元素是否出现在窗口可视范围(浏览器的上边缘和下边缘之间,肉眼可视)。写一个函数 isVisibl...
    饥人谷_流水阅读 111评论 0 0
  • 题目1:如何判断一个元素是否出现在窗口可视范围(浏览器的上边缘和下边缘之间,肉眼可视)。写一个函数 isVisib...
    饥人谷_严琰阅读 298评论 0 0
  • 1.如何判断一个元素是否出现在窗口可视范围(浏览器的上边缘和下边缘之间,肉眼可视)。写一个函数 isVisible...
    24_Magic阅读 215评论 0 0
  • 题目1:如何判断一个元素是否出现在窗口可视范围(浏览器的上边缘和下边缘之间,肉眼可视)。写一个函数 isVisib...
    Maaaax阅读 275评论 0 0