实现网页图片的异步加载

Python爬虫 解决异步加载问题--以爬取PEXELS图片为例 第一次尝试爬取—>[Python爬虫]爬虫实例:三种方式爬取PEXELS图片 在爬取PEXELS时,遇到了这样问题: 页面使用Ajax的异步加载技术来实现分页,所以通过request.text无法获取动态加载的内容.而如果想正确获取这些数据,则需要使用名为逆向工程的过程(“抓包”).PS:如果对上面的文字感到疑惑,那么可以阅读下面的例子和说明,做基础的了解. 例如:要在PEXELS上看猫片 ... 阅读详情

如题。

        最近在进行开发的项目中,有一个网页需要使用非常多的图片,那么必须对图片的加载做优化。使用流式加载图片的方法是绝对不行,对服务器的带宽将是非常大的考验,于是,我考虑使用图片的异步加载。

        在网上寻找插件,最终让我找到一个非常牛逼的js插件。名字叫做:lazy load.项目主页如下:http://www.appelsiini.net/projects/lazyload

        这个插件能够实现的效果,是在页面初次加载的时候,只加载可视窗口范围内的图片。其他区域的图片只有在当页面滑动到可视位置的时候才会加载。对于一个大页面,如果用户在该页面的停留时间不长,那么使用这种异步加载的方法会明显地降低服务器带宽的压力。

         使用的方法,引入了lazy load的js库之后,在页面的任意位置,可以通过img标签,定义一个位置。

HTML:类名是不可更改的,data-original跟的是img的链接地址。

<img class="lazy" data-original="../res/good-1-1.jpg">
JS:

<!--图片异步加载插件js-->
<script src="../res/jquery.lazyload.js" type="text/javascript"></script>
<script>
   <!--实现图片异步加载lazyload,effect是图片加载的效果,这里是缓缓浮现的效果-->
	$("img.lazy").lazyload({
	   effect : "fadeIn"
	});
</script>

当然,我们还可以设置当页面滑动至某位置,距离其滑动方向一定距离内的图片预先加载,防止页面加载的时候出现图片的位置出现了一张灰色的背景图,

在上面的js中的lazyload函数中体添加一个语句:

threshold : 200

后面的数值能够让用户自定义页面上的这段预先加载图片的距离。

当然,这个插件好像还是有一些问题,例如网上有网友提出,这个插件不仅不能减少服务器的压力,反而会增加服务器的压力。

最后附上一个大神写的图片异步加载的插件,虽然不太完美,但是对于帮助我们理解lazy load的工作原理还是有一定的帮助的。

http://www.zhangxinxu.com/wordpress/2010/11/jquery%E9%A1%B5%E9%9D%A2%E5%9B%BE%E7%89%87%E7%AD%89%E5%85%83%E7%B4%A0%E6%BB%9A%E5%8A%A8%E5%8A%A8%E6%80%81%E5%8A%A0%E8%BD%BD%E5%AE%9E%E7%8E%B0/



Ego-Planner实战避坑指南:从环境搭建到仿真运行 本文详细介绍了在Windows系统下,通过WSL2搭建Ego-Planner无人机路径规划算法开发环境的完整流程与实战避坑指南。内容涵盖ROS Noetic安装、第三方依赖库(如Ceres Solver)编译冲突解决、Realsense SDK版本降级处理,以及Gazebo仿真与真机调试的常见问题,旨在帮助开发者高效完成环境配置并成功运行仿真。 阅读详情

相关推荐

NVIDIA-SMI has failed because it couldn‘t communicate with the NVIDIA driver. 最全解决方案!详细!

真的折磨了我整整一天,从网上的资料到GPT都翻遍了,终于是解决了!以下方案希望能帮助到你们。

weixin_44124632的博客 1万+

lazyload.js实现图片异步延迟加载

所谓图片异步加载,意思是不用一次把图片全部加载完,你可以叫它延迟加载,缓冲加载都行。 看看你有没有这种需求:某篇文章图片很多,如果在载入文章时就载入所有图片,无疑会延缓载入速度,让用户等更久,所以,我想找这样一种插件,让网页只加载浏览器视野范围内的图片,没出现在范围内的图片就暂不加载,等用户滑动滚动条时再逐步加载。lazyload就是用来实现这种效果。 lazyload.js其实是jQuery的一

深度Java 3670

LangChain开发避坑指南:为什么Pylance总提示‘无法解析导入‘?实测7种修复方案

本文深入解析了在VS Code中使用LangChain开发时,Pylance频繁提示‘无法解析导入’的根本原因——Python解释器与语言服务器的环境路径不一致。文章提供了从基础排查到深度配置的7种实测修复方案,包括切换解释器、配置extraPaths、使用pyrightconfig.json等,旨在帮助开发者彻底解决此问题,提升AI应用开发效率。

weixin_28826521的博客 447

异步加载图片(一)

前言:本以为异步加载挺简单,因为网上代码多,但真想要做好,还真不那么简单,从看代码到弄懂再到自己写,实在是有太多的东西需要学了,用了两天的时间,终于弄出来了,因为用到回调函数,所以理解起来可能难度有点大,讲起来也不太好讲,我尽力讲的明白些,其实还是要多看代码,自己摸索摸索,动手写写就什么都理解了。 实现效果: 1、异步加载图片,在加载图片时,先加载一个默认的图片,然后在后台加载图片,加载完成后

启舰 2万+

ios生成海报使用dom-to-image中toPng报错isTrusted:true

主要是ios中safari浏览器解析错误,引起的报错,主要引起原因toPng会调用toSvg,toSvg直接将html标签内容通过svg中foreignObject标签直接包裹,然后转base64, 通过data:image/svg+xml;解决办法:二次生成(调用两次),判断ios or 安卓,生成第一次生成,不用参数,例如:scale: 3,在第二次生成再进行清晰度操作,避免多次生成,引起性能消耗。以上种种很多案例,使用canvase进行转换的,标签丢失,直接toPng版本的,兼容性问题。

weixin_44601570的博客 2106

告别单一查询!MultiQueryRetriever在LangChain中的高级用法解析

本文深入解析了LangChain中的MultiQueryRetriever高级用法,该工具通过大语言模型自动生成多样化查询,显著提升文档检索的召回率和准确性。文章详细介绍了其核心机制、高级配置调优策略以及在多语言和专业领域中的实际应用,为开发者提供了优化知识库问答系统的实用方案。

weixin_28730927的博客 272

异步懒人加载图片(GET和POST请求方式)

异步加载图片 首先你要实现你的GET和POST请求方式 (遵循NSURLConnectionDataDelegate) 因为GET和POST的请求方式不一样但是他们的请求过程都是一样的 所以 我们需要写一个GET的请求方法只需要传入你的URLString就可以了 -(void)requestForGETWithUrl:(NSString *)urlString{ NSURL * url

maomaoxiansheng的专栏 1269

.NET+Vue企业级RBAC权限平台:开箱即用的生产就绪方案

RBAC(基于角色的访问控制)是企业系统安全治理的基础模型,其核心在于将用户、角色与权限解耦,通过动态能力组合实现细粒度管控。在真实工程中,RBAC需突破静态角色限制,支持时间维度授权、前后端双重鉴权、行级数据范围控制等关键能力。本文聚焦于一套已落地金融、政务、制造等多行业的生产级实现——基于.NET Minimal API与Vue 3的前后端分离架构,提供菜单/按钮/接口/数据四层权限控制,内置滑动过期JWT、Redis权限缓存、动态路由加载与权限指令等开箱即用能力,显著降低权限配置与审计成本。

weixin_33326218的博客 277

异步加载图片

实现效果: 1、异步加载图片,在加载图片时,先加载一个默认的图片,然后在后台加载图片,加载完成后显示出来; 2、当用户在滑动时,停止加载图片的线程,当停止滑动时,看哪几个ITEM在显示屏内,只加载这几个,其它线程保持阻止;(下篇再讲) 效果图:           刚开始加载时                          向下划动(新划出来的是空白块)        

xuchengyun2015的博客 1115

Redhawk: 为什么STA CHECK中switch cell覆盖率为0(STA file中switch control pin没有timing window)?

如题,做dynamic analysis时,不需要switch cell的timing window信息,但是做low power analysis需要做上电时switch cell的timing window就是必须的了,本文对switch cell control pin没有timing window (STA CHECK覆盖率为零)的这种现象做分析。

m0_61544122的博客 1197

OpenClaw实战三|电商自动化AI工具:自动上下架+智能客服+订单统计,小店运营效率直接翻3倍

对电商小团队、夫妻店、个人商家来说,最缺的不是流量,而是省时间的工具。OpenClaw这套电商自动化AI工具,不用懂代码、不用买昂贵的SaaS软件,一台服务器、简单配置,就能把最耗时间的工作全部交给AI。人只做最有价值的事:选品、拍图、搞流量、处理复杂售后,剩下的上下架、回复、统计,全都让AI帮你打工。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1463

H5页面异步图片延迟显示解决方案

这里写自定义目录标题问题提出原因简述解决方案一般方案进阶方案:图片预加载终极解决:利用**工程化**自动完成异步图片预加载 问题提出 在开发h5页面的时候会经常涉及到图片的使用,对于图片的使用优化前端解决方案颇多,比如图片的懒加载等。但是有另外一种常见情况,网上却鲜有解决方案,那就是交互类图片异步显示问题。 举个例子,比如页面中有一个规则弹窗,弹窗背景使用的是图片的形式呈现,在用户网络不稳定情况下,就会发生弹窗已经出现但是弹窗背景并未加载完成,造成弹窗添加微动效无法正常展示,严重影响用户体验,如图示: 原因

weixin_44658445的博客 2572

肖特基二极管选型参数,结构原理,工艺与注意问题总结

肖特基二极管(Schottky Diode)是一种特殊的二极管,也被称为肖特基势垒二极管。它是利用金属与半导体接触形成的金属-半导体结原理制成的。与传统的PN结二极管相比,肖特基二极管具有更低的正向压降、更高的开关速度、更高的反向恢复时间以及更好的温度稳定性等特点。本文对肖特基二极管的工作原理,结构特点,工艺流程,选型参数及设计注意事项进行总结。

fydar的博客 815

网页 从其他服务器 加载图片,实现网页图片的异步加载

如题。最近在进行开发的项目中,有一个网页需要使用非常多的图片,那么必须对图片的加载做优化。使用流式加载图片的方法是绝对不行,对服务器的带宽将是非常大的考验,于是,我考虑使用图片的异步加载。在网上寻找插件,最终让我找到一个非常牛逼的js插件。名字叫做:lazy load.项目主页如下:http://www.appelsiini.net/projects/lazyload这个插件能够实现的效果,是在页...

weixin_34163020的博客 652

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

实现页面图片的延时异步加载

做WEB时有这样的需求,由于页面图片太多导致页面加载压力比较大, 这时需要通过技术手段实现图片的分时异步加载 这里是通过前段js的技术来实现的,用到的一个js库文件就是jquery.lazyload.js 可以点此下载 http://andy.zzsmsc.com/tpl/Wap/default/common/js/jquery.lazyload.js 这个库同时需要配

oDongTianShuiYue的专栏 839

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

图片异步加载的一种处理方法

在做web开发时,网页的展示过程中总是少不了图片的展示,由于受到网速的影响图片的加载总是缓慢的。 以下是一种图片的异步加载的方法,原理实际上还是很简单的, 首先展示一张默认图片,一般都是比较小的图片,最好是像素点,新建一个img对象,当这个新的img对象加载完成后替换掉原来的img元素。 以下是具体实现: function showLoadedImage(sUrl, o

记录在编码的路上 2208

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

使用lazyload.js实现图片异步载入

这应该是第一次正式使用jQuery吧,感觉很不错。 所谓图片异步加载,意思是不用一次把图片全部加载完,你可以叫它延迟加载,缓冲加载都行。 看看你有没有这种需求:某篇文章图片很多,如果在载入文章时就载入所有图片,无疑会延缓载入速度,让用户等更久,所以,我想找这样一种插件,让网页只加载浏览器视野范围内的图片,没出现在范围内的图片就暂不加载,等用户滑动滚动条时再逐步加载。lazyload

frank_wu的专栏 1811

Android中图片的异步加载

1、  为什么要异步加载图片 下载图片比较费时,先显示文字部分,让加载图片的过程在后台,以提升用户体验 2、  SoftReference的作用 栈内存—引用 堆内存—对象 Eg: Object obj = new Object(); Obj = null; 当垃圾收集器启动时,会回收对象; 当一个对象没有任何引用指向,就会被回收。 So

太阳,月亮 1793

jquery html异步加载图片,jquery实现异步加载图片(懒加载图片一种方式)

jquery实现异步加载图片(懒加载图片一种方式)发布时间:2020-08-26 08:45:03来源:脚本之家阅读:111作者:专注前端30年首先将插件在jq后面引入(function($) {// alert($.fn.scrollLoading);$.fn.scrollLoading = function(options) {var defaults = {attr: "data-url"}...

weixin_39929595的博客 277

jquery 异步加载,懒加载图片一种方式

首先将插件在jq后面引入 (function($) { // alert($.fn.scrollLoading); $.fn.scrollLoading = function(options) { var defaults = { attr: "data-url" }; var params = $.extend({}, defau

现在学习也不晚 6868

es6学习——promise图片异步加载方法封装

function loadImageAsync(url) { return new Promise(function(resolve, reject) { const image = new Image(); image.onload = function() { resolve(image); }; image.onerror = function...

mmcrsx_blog的博客 1996

jquery.lazyload.js 插件实现图片异步延迟加载

图片异步加载,就是不必一次性把页面的所有图片都加载显示出来,等用户滑动滚动条到某个位置时才会加载显示相应位置的图片,这样能很好地提升网页加载速度,进一步提升用户体验。 1、导入 JS 插件: //注意此处引入jquery的路径 //注意此处引入jquery的路径2、在页面中插入 JavaScript 代码: //图片异步加载 jQuery(document).

天下熙熙,皆为利来;天下攘攘,皆为利往。 999

jq实现图片预加载

&lt;style type="text/css"&gt; body{margin: 0px; padding: 0px;} .dd{border: 0px solid red; height: 800px;} #pics{width: 90%; margin: 0px auto;} #pics dl{width: 32%; float: left; margin-left: 1%...

weixin_41421227的博客 1118

Android 从缓存中读取图片并异步加载的类

在新浪微博的微博列表中的图片,为了加速其显示也未了加快程序的响应,可以参考该图片异步加载类实现。publicclassAsyncImageLoader{//SoftReference是软引用,是为了更好的为了系统回收变量privateHashMap<String,SoftReference<Drawable>>imageCache;p...

weixin_30399155的博客 114

python爬取异步加载的网页_Python爬虫学习笔记(1.3)爬取网站异步加载数据

异步加载数据:简单的举个例子,有些网页不需要换页,只要网页上的滚动条滑到最下方,它就会自动加载部分数据,和瀑布流一样,可以持续不断的加载数据 ,这些持续加载的数据就属于异步数据(由js控制,和请求网址的Request不是一起的)。首先,使用浏览器工具检查,选择Network下的XHR,然后鼠标往下滑,让网页不断的加载数据,观察XHR的变化,如图。1F33799E-A4BD-433D-AEB1-E5...

weixin_39598069的博客 1122

实例学习——爬取Pexels高清图片

近来学习爬取Pexels图片时,发现书上代码会抛出ConnectionError,经查阅资料知,可能是向网页申请过于频繁被禁,可使用time.sleep(),减缓爬取速度,但考虑到爬取数据较多,运行时间过长,所以选择对抛出的异常pass,在此修正。 开发环境:(Windows)eclipse+pydev 爬取网址:传送门 1、通过观察网页可一直下滑更新知,该网页使用了异步加载技术(AJA...

426
上一篇: banner图加速加载的方法
下一篇: 实现页面滑动到一定位置后弹出图片(兼容IE9/10/11,chrome,firefox,safari)
GiantChan
博客等级 码龄16年 76粉丝 108原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值