a markdown-it plugin supporting Chrome 75's native image lazy-loading
npm install markdown-it-image-lazy-loadingA markdown-it plugin supporting Chrome 75's native image lazy-loading and async decoding.
``bash`
$ npm install markdown-it-image-lazy-loading
Load it in ES module.
`javascript
import markdownit from 'markdown-it';
import lazy_loading from 'markdown-it-image-lazy-loading';
const md = markdownit();
md.use(lazy_loading);
md.render();`
// 
Or load it in CommonJS module.
`javascript
const md = require('markdown-it')();
const lazy_loading = require('markdown-it-image-lazy-loading');
md.use(lazy_loading);
md.render( );`
// 
If you want the decoding="async" attribute, enable the plugin's decoding option.
`javascript
md.use(lazy_loading, {
decoding: true,
});
md.render( );`
// 
The plugin can also add width and height attributes to each image. This can prevent cumulative layout shifts (CLS):
`javascript
md.use(lazy_loading, {
image_size: true,
// Where your images are stored
base_path: __dirname + 'src/',
});
md.render( );`
// 
To keep images responsive, also include the following CSS:
`css``
img{
max-width: 100%;
height: auto;
}
MIT