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;
| }
| }
|
|