39 个仓库
Mechanisms to defer the loading of images until they enter the viewport.
Distinct from Lazy Loading Libraries: Specifically targets image loading via visibility observers rather than general JS libraries or code-splitting
Explore 39 awesome GitHub repositories matching web development · Image Lazy Loading. Refine with filters or upvote what's useful.
AOS is a scroll-triggered animation library that controls the execution, timing, and mapping of CSS transitions based on element visibility and browser viewport intersections. It functions as a DOM element animation controller and a viewport intersection trigger to initiate visual transitions as elements enter the screen. The library utilizes a custom CSS transition bridge to map scroll-based triggers to CSS class changes, enabling integration with external styling frameworks. It supports anchor-based animation triggers, allowing the visibility of one page element to act as the trigger point
Recalculates animation trigger points automatically or manually whenever the window resizes or document structure changes.
A very compact representation of a placeholder for an image.
Displays a blurred placeholder immediately while the full-resolution image loads asynchronously.
vue-awesome-swiper is a Vue.js component wrapper for the Swiper library, providing a declarative interface for creating touch-enabled carousels. It serves as a virtualized slider component that can render only visible slides to maintain performance when handling large datasets. The project distinguishes itself through high-performance rendering and a wide array of visual effects, including 3D transitions, parallax movements, and image zoom capabilities. It also supports the synchronization of multiple slider instances and provides accessibility features such as ARIA roles and focus-scrolling
Increases page load speed by delaying image loading until they enter the viewport.
Vditor is a browser-based Markdown editor and rendering engine that supports multiple editing interfaces, including a visual rich-text experience, instant rendering, and a traditional side-by-side split-view preview. It serves as an authoring tool for technical documentation and a component for web-based editor integration. The project is distinguished by its support for complex technical content, utilizing specialized rendering for mathematical formulas, flowcharts, sequence diagrams, and mind maps. It also functions as a collaborative document review tool, enabling users to attach anchored
Implements lazy loading for images to defer loading of off-screen assets and improve editor performance.
Picturefill is a responsive image polyfill that adds support for the picture element, srcset, and sizes attributes in browsers that lack native implementation. It emulates the picture element with source media queries and format fallbacks, providing responsive image selection based on viewport size and device pixel ratio. The polyfill reevaluates responsive image sources after dynamic DOM changes to keep displayed images correct, and delivers alternative image formats like WebP with automatic fallback to standard formats in unsupported browsers. It also conserves bandwidth by selecting smalle
Loads the most appropriate image source based on viewport size and device capabilities using the picture element and srcset or sizes attributes.
Buefy is a lightweight user interface component library built for Vue.js. It serves as a programmatic wrapper for the Bulma CSS framework, providing a set of pre-styled layout utilities, form components, and structural wrappers to ensure a consistent visual identity. The library provides a comprehensive suite of form elements, including specialized date and time pickers, autocomplete inputs, and validation wrappers. It also includes layout tools such as navigation bars, off-canvas sidebars, and modal overlays, as well as notification systems for banners, snackbars, and toasts. Additional cap
Ships an observer-based system that delays image loading until they are visible in the viewport.
Lazyload is a JavaScript plugin that defers the loading of images until they scroll into the viewport, using the browser's Intersection Observer API to detect visibility. It is designed to speed up initial page load and save bandwidth by delaying off-screen images, and includes a jQuery-compatible wrapper for drop-in integration with existing jQuery code. The plugin distinguishes itself through support for responsive images, loading different sources based on screen size, and a blur-up placeholder effect that shows a low-resolution image that transitions into the sharp version once fully load
Delays the loading of off-screen images until they scroll into the viewport to speed up initial page load and save bandwidth.
Hexo Theme Butterfly is a visual template for Hexo that transforms Markdown content into a responsive website featuring card-based layouts. It functions as a technical content renderer capable of displaying complex data such as mathematical formulas, Mermaid diagrams, and interactive charts within blog posts. The interface is PWA enabled, utilizing service workers and manifest files to provide offline access and installation on mobile devices. The theme distinguishes itself through a wide array of specialized content rendering tools, including musical score rendering, chronological timelines,
Defers image loading until they enter the viewport and supports modern formats to improve load times.
This project is a JavaScript UI component library and frontend utility toolkit. It serves as a web modal framework and popup library, providing a specialized system for rendering interactive dialogs, overlays, and layered interfaces over web page content. The library is distinguished by its comprehensive set of overlay tools, including alert dialogs, confirmation prompts, and the ability to embed external content via iframes. It also features a responsive twelve-column grid system for cross-device layout compatibility and an internal modular dependency management system for on-demand loading
Loads images only when they enter the visible viewport to reduce initial page load time and save bandwidth.
vue-lazyload is a Vue.js image lazy loading plugin and frontend asset optimizer. It serves as a viewport visibility observer that defers the loading of images and components until they enter the browser viewport to reduce initial page load times. The project functions as a progressive image loader by managing image placeholders and implementing dynamic source switching. It uses a browser API to monitor when elements enter the viewport, avoiding expensive scroll event listeners to maintain performance. The plugin provides capabilities for image loading state tracking, including custom placeho
Defers the loading of images until they enter the viewport to improve initial page load speed.
Snapdom is a DOM capture engine that serializes live web page elements into images, videos, documents, and other formats. It converts any DOM subtree into PNG, JPG, WebP, SVG, PDF, or self-contained HTML, and can record animating elements as video files or animated GIFs using the browser's MediaRecorder API. The library distinguishes itself through a plugin-based architecture that allows custom output format handlers and pipeline hooks to extend the capture process without re-cloning the source element. It manages separate caches for images, styles, and fonts with preloading and clearing meth
Detects base64 placeholder stubs and fetches real images before capturing the DOM subtree.
vanilla-lazyload is a JavaScript lazy loading library and viewport-based asset loader designed to improve page load speed by deferring the loading of images, videos, iframes, and backgrounds. It functions as an intersection observer media loader that triggers resource downloads and script execution only when elements enter the browser viewport. The project also serves as a native lazy loading polyfill, utilizing native browser loading attributes where supported and providing a JavaScript fallback for older environments. The library distinguishes itself through active bandwidth management, suc
Defers the loading of CSS background images until the corresponding element enters the viewport.
该项目是一个原生 JavaScript 库和 Web 性能优化工具,旨在推迟图像、视频和 iframe 的加载,直到它们进入浏览器视口。它充当交叉观察器(Intersection Observer)封装器和自适应媒体加载器,以减少初始页面加载时间并节省带宽。 该库通过支持 srcset 和 picture 标签的响应式图像,以及 CSS 背景图像和动画 SVG 而脱颖而出。它在可用时与原生浏览器加载属性集成,同时为不支持的环境提供自定义回退。它还可以根据元素可见性触发特定 JavaScript 函数的执行。 广泛的功能包括前端资产管理,支持自定义滚动容器定位和针对异步注入元素的动态内容观察。该实用程序还通过资产加载错误处理来管理网络可靠性,并取消在完成前退出视口的元素的活动下载。
Loads the most appropriate image source using picture tags and srcset attributes only when the element enters the viewport.
Flickity is a JavaScript library used to create responsive, touch-enabled content carousels and sliders for web pages. It provides a system for building flickable galleries that allow users to navigate through collections of elements using touch or mouse input. The library specializes in performance and movement, featuring lazy-loading for images that defers loading off-screen content until it enters the viewport. It supports infinite scrolling loops that wrap back to the first cell after the last is reached, as well as automated slide transitions for slideshow experiences. The toolset inclu
Defers the loading of images until their corresponding carousel cell enters the viewport.
lozad.js is a JavaScript lazy loading library and viewport-based media loader. It serves as a dependency-free wrapper around the Intersection Observer API to defer the loading of images and iframes until they enter the browser viewport. The project functions as a responsive image loader that optimizes page speed by delivering the most appropriate image sizes and formats based on the user's screen. It includes capabilities for responsive image optimization and layout stabilization through the use of image placeholders to prevent content shifts. The library manages the full lifecycle of deferr
Defers the loading of images until they are visible in the browser viewport.
Photoview is a self-hosted photo gallery and media manager designed for browsing and organizing personal photo and video collections. It functions as an AI-powered face recognition gallery that automatically detects, clusters, and labels human faces to organize media by person. The system persists metadata and user configurations using SQL-compliant databases such as PostgreSQL, MySQL, or SQLite. The platform distinguishes itself through specialized media processing and integration capabilities. It processes RAW camera files and transcodes videos into browser-compatible formats, while offerin
Generates and stores low-resolution previews locally and defers loading until the assets enter the viewport.
A faster youtube embed.
Ships a lightweight web component that loads a static poster first and defers the YouTube iframe until user click.
Scrollama is a JavaScript library for scroll-driven storytelling that uses the browser's native IntersectionObserver API to trigger step-based callbacks and animations as the user scrolls through a page. It pins graphic elements using CSS sticky positioning while scrolling through associated text steps, enabling side-by-side narrative experiences without JavaScript-driven layout calculations. The library provides a configurable offset threshold system that accepts a single global offset or per-element data-attribute offsets to define the viewport position that triggers step events. It reports
Removes all observers and callback functions to clean up the scroll-tracking instance.
react-lazyload 是一个 React 组件和视口可见性包装器,旨在通过推迟屏幕外 UI 元素的显示来最小化资源消耗。它作为一个前端性能优化器,延迟图像或组件的渲染,直到它们进入浏览器视口。 该库通过允许定义占位符尺寸来防止布局偏移,在内容懒加载时保持页面稳定性。它使用内部状态和可选动画管理从这些占位符到实际内容的过渡。 该系统提供了视口可见性检测机制、强制立即挂载的手动显示覆盖,以及在标准滚动或调整大小事件不足时使用的手动可见性触发器。
Allows specifying element dimensions before they become visible to prevent layout shifts.
react-intersection-observer 是 Intersection Observer API 的 React 实现,旨在跟踪 DOM 元素何时进入或离开浏览器视口。它提供了一个包装器和一组钩子,用于监控元素可见性并在内容对用户可见时触发回调。 该库包含一个 DOM 遮挡检测机制,以确定元素是否被其他组件覆盖或被 CSS 过滤器隐藏。它还具有一个 polyfill 包装器,为不支持 Intersection Observer 功能的浏览器提供可见性回退。 该项目涵盖了各种可见性跟踪功能,包括用于组件重新渲染的状态同步更新,以及无需更新状态即可执行回调的非渲染监控。这些工具支持实现无限滚动、资产懒加载和基于滚动的动画。
Defers the loading of images and media assets until they enter the browser viewport.