在 mithrill 组件加载后修改 html
modify html after mithrill component loads
这是我的 vdom 的一部分
m('.w-row', _.map(ctrl.posts(), (post) => {
return m('.w-col.w-col-4.col-blog-post',
[
m(`a.link-hidden.fontweight-semibold.fontsize-base.u-marginbottom-10[href="${post[2][1]}"][target=\'__blank\']`, post[0][1]),
m('.fontsize-smaller.fontcolor-secondary.u-margintop-10', m.trust(`${post[1][1]}`))
]
);
})),
在m.trust('${post[1][1]}')
部分我得到了html的一部分。我想用 html 为 html 中的每个 link 添加 target _blank
。我尝试在 trust
中添加 config
但该函数未执行。知道我该怎么做。
这是我将目标 _blank 添加到 html
的 js
var div = document.getElementsByClassName('medium-feed-item');
div[0].getElementsByTagName('a');
div[0].getElementsByTagName('a')[0].setAttribute('target', '_blank');
您需要将 config
调用放在 m.trust
上方的节点中:
m('.w-row', _.map(ctrl.posts(), post =>
m('.w-col.w-col-4.col-blog-post',
m(`a.link-hidden.fontweight-semibold.fontsize-base.u-marginbottom-10[href="${post[2][1]}"][target=\'__blank\']`, post[0][1]),
m('.fontsize-smaller.fontcolor-secondary.u-margintop-10', {
config(el){
_.map(el.querySelectorAll('a:not([target=__blank])'), el =>
el.setAttribute('target', '__blank')
)
}
},
m.trust(`${post[1][1]}`)
)
)
)
)
这是我的 vdom 的一部分
m('.w-row', _.map(ctrl.posts(), (post) => {
return m('.w-col.w-col-4.col-blog-post',
[
m(`a.link-hidden.fontweight-semibold.fontsize-base.u-marginbottom-10[href="${post[2][1]}"][target=\'__blank\']`, post[0][1]),
m('.fontsize-smaller.fontcolor-secondary.u-margintop-10', m.trust(`${post[1][1]}`))
]
);
})),
在m.trust('${post[1][1]}')
部分我得到了html的一部分。我想用 html 为 html 中的每个 link 添加 target _blank
。我尝试在 trust
中添加 config
但该函数未执行。知道我该怎么做。
这是我将目标 _blank 添加到 html
的 jsvar div = document.getElementsByClassName('medium-feed-item');
div[0].getElementsByTagName('a');
div[0].getElementsByTagName('a')[0].setAttribute('target', '_blank');
您需要将 config
调用放在 m.trust
上方的节点中:
m('.w-row', _.map(ctrl.posts(), post =>
m('.w-col.w-col-4.col-blog-post',
m(`a.link-hidden.fontweight-semibold.fontsize-base.u-marginbottom-10[href="${post[2][1]}"][target=\'__blank\']`, post[0][1]),
m('.fontsize-smaller.fontcolor-secondary.u-margintop-10', {
config(el){
_.map(el.querySelectorAll('a:not([target=__blank])'), el =>
el.setAttribute('target', '__blank')
)
}
},
m.trust(`${post[1][1]}`)
)
)
)
)