forked from php-danfu.shenzhenbenwo.com

lefengyang
2025-09-10 9753a88eceb52a0f2e3084cf72f3474d2d7d7f1b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
var inlineTags = {
    abbr: 1,
    b: 1,
    big: 1,
    code: 1,
    del: 1,
    em: 1,
    i: 1,
    ins: 1,
    label: 1,
    q: 1,
    small: 1,
    span: 1,
    strong: 1
}
module.exports = {
    // 从顶层标签的样式中取出一些给 rich-text
    getStyle: function(style) {
        if (style) {
            var i, j, res = '';
            if ((i = style.indexOf('display')) != -1)
                res = style.substring(i, (j = style.indexOf(';', i)) == -1 ? style.length : j);
            if ((i = style.indexOf('float')) != -1)
                res += ';' + style.substring(i, (j = style.indexOf(';', i)) == -1 ? style.length : j);
            return res;
        }
    },
    // 处理懒加载
    getNode: function(item, imgLoad) {
        if (!imgLoad && item.attrs.i != '0') {
            var img = {
                name: 'img',
                attrs: JSON.parse(JSON.stringify(item.attrs))
            }
            delete img.attrs.src;
            img.attrs.style += ';width:20px;height:20px';
            return [img];
        } else return [item];
    },
    // 是否通过 rich-text 显示
    useRichText: function(item) {
        return !item.c && !inlineTags[item.name] && (item.attrs.style || '').indexOf('display:inline') == -1;
    }
}