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