我用的vue,用了json-editor这个插件,我需要给textarea标签所有data-schemaformat="html"类型绑定focus事件,还有新添的textarea也要绑定<textarea data-schemaformat="html" name="root[title]"></textarea>我用了queryselectorall addeventlistener 都不行请问用原生的js怎么解决请大家看好问题,html是json-editor插件生成的,我怎么来给所有的textarea包括心生成的textarea绑定onfocus
1 回答
月关宝盒
TA贡献1772条经验 获得超5个赞
1.用MutationObserver监控DOM变化,有新添加的textarea则添加绑定(不兼容旧IE)
2.或者直接在父元素上绑定,通过判断target做对应处理
document.querySelector('body').addEventListener('focus', (ev) => {
if (ev.target.nodeName === 'TEXTAREA' && event.target.dataset['schemaformat'] === 'html') {
/* ... */
console.log('123')
}
}, true)
添加回答
举报
0/150
提交
取消