Html图片懒加载动画,js实现图片懒加载效果

本文实例为大家分享了js图片懒加载的具体代码,供大家参考,具体内容如下图片懒加载,思路:当鼠标滑动到对应图片的高度时,进行图片的加载;#div{width:575px;height:auto;overflow:hidden;border:red1pxsolid;margin:0auto;/*给该div设置定位*/position:relative;}#divimg{width:…

大家好,又见面了,我是你们的朋友全栈君。

本文实例为大家分享了js图片懒加载的具体代码,供大家参考,具体内容如下

图片懒加载,思路:当鼠标滑动到对应图片的高度时,进行图片的加载;

#div{

width: 575px;

height: auto;

overflow: hidden;

border: red 1px solid;

margin: 0 auto;

/*给该div设置定位*/

position: relative;

}

#div img{

width: 267px;

height: 396px;

margin-left: 10px;

border: 1px solid #000;

}

function getPos(obj){

var l = 0;

var t = 0;

while(obj){

l += obj.offsetLeft;

t += obj.offsetTop;

obj = obj.offsetParent;

}

return {left:l ,top : t}

}

window.onload = window.onscroll = function(){

//获取到img

var aImg = document.getElementsByTagName(“img”);

//获取到它的scrollTop 值 考虑兼容问题

var oScrollTop = document.documentElement.scrollTop || document.body.scrollTop;

// clientHeight = 上下padding + height

var clientH = document.documentElement.clientHeight;

//循环遍历每一项通过调用获取到每一个i 项对象的top 值

for (var i = 0;i

var aImgTop = getPos(aImg[i]).top;

// 当滚动的时候进行判断,看他的滚动的高度加上它的clientHeight 是否比它的 top 值大

// 如果大或等于说明滚动到当前位置可以加载图片

if (oScrollTop + clientH >= aImgTop) {

// 进行图片的加载

aImg[i].src = aImg[i].getAttribute(“_src”);

}

}

}

当有类似于瀑布流的布局时常用的加载模式

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/126919.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • accept 函数_case when函数

    accept 函数_case when函数2.关于AcceptEx  使用此函数时,要包含头文:Mswsock.h,同时要链接:Mswsock.lib。可在源程序中加入下面的语句,这样在编译时,将自动链接Mswsock.lib。  #pragmacomment(lib,”Mswsock.lib”)    下面是使用AcceptEx函数的示例代码:  #defineSTRICT  #define_WIN32_WINNT0x050

    2022年9月29日
    0
  • mysql5.7的jdbc_JDBC连接mysql5.7简单例子

    mysql5.7的jdbc_JDBC连接mysql5.7简单例子1,准备jdbc的连接jar包,然后在eclipse中创建一个java项目(不是web项目)。2,将jdbc的jar包buildpath或者copy到java项目中都可以,等下给出项目结构图。3,给出jdbcc类的连接代码,packagejdbcDemo;importjava.sql.Connection;importjava.sql.DriverManager;importjava…

    2022年9月4日
    4
  • 数据库系统概论第五版 课后习题答案王珊

    数据库系统概论第五版 课后习题答案王珊第1章绪论1.试述数据、数据库、数据库系统、数据库管理系统的概念。答:(l)数据(Data):描述事物的符号记录称为数据。数据的种类有数字、文字、图形、图像、声音、正文等。数据与其语义是不可分的。解析在现代计算机系统中数据的概念是广义的。早期的计算机系统主要用于科学计算,处理的数据是整数、实数、浮点数等传统数学中的数据。现代计算机能存储和处理的对象十分广泛,表示这些对象的数据…

    2022年9月14日
    0
  • ipset基本用法和保存配置「建议收藏」

    ipset基本用法和保存配置「建议收藏」ipset基本用法ipset基本用法需要保存配置,不然重启会失效ipset基本用法1.创建ipset集合创建一个新的ipset集合:ipsetcreateSETNAMETYPENAMEipsetcreatebbhash:ip2.向集合中添加条目ipsetaddbb2.2.2.2ipsetaddbb192.168.10.21-192.168.10.313.查询条目ipsetlistipsetlistaa4.检查目标ip是否在ipset集合中ipsette

    2022年9月28日
    0
  • linux vim dd命令_vim命令和vi的区别

    linux vim dd命令_vim命令和vi的区别Vim是从vi发展而来的文本编辑器,可以用颜色或底线等方式来显示一些特殊的信息。Vim是Linux中必不可少的工具,搭建网站修改配置文件时经常用到。本教程介绍Vim的模式和常用操作。背景信息Vim的各个模式介绍如下表所示:模式作用模式转换普通模式(NormalMode)在该模式下,您可以复制、粘贴、删除字符或行。运行vim打开文件时,即进入普通模式。在其他四个模式下,按Esc键…

    2022年9月22日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号