summaryrefslogtreecommitdiff
path: root/scripts/lazyload.js
blob: edacbbb5121e414e1c8fac9539f12f6f5527f503 (plain)
1
2
3
4
5
6
7
8
9
10
11
'use strict';

hexo.extend.filter.register('after_post_render', (data) => {
    if (hexo.theme.config.lazyload !== true) return;
    const loading = "data:image/gif;base64,R0lGODlhAQABAAAAACw=";
    data.content = data.content.replace(/<img(.*?)src="(.*?)"(.*?)>/gi, (str, _, src) => {
        if (/data-srcset/gi.test(str) || /src="data:image(.*?)/gi.test(str))
            return str;
        return str.replace(src, `${src}" class="lazy" data-srcset="${src}" srcset="${loading}`);
    });
});