如何让CSS感知到Web Component的属性已发生变更?
Web Component Shadow DOM 属性访问与事件冒泡问题
- 当前可行的实现方式:通过组件的
clicked属性设置器操作时,AttributeChanged事件会触发,对应的内联CSS可正常响应:#myBtn[clicked="true"] { opacity: 0.5; } - 遇到的困境:点击事件发生在Shadow DOM内部,无法直接访问自定义元素的
clicked属性访问器,目前仅能通过闭包将自定义元素的this传递给事件处理程序来实现操作。 - 疑问:尽管Web Component的使用者可以自行在
#myBtn上添加data-clicked属性并维护,但属性变更事件难道不应该从Shadow DOM冒泡到Light DOM吗?
内容的提问来源于stack exchange,提问作者McMurphy
相关产品推荐
相关产品推荐

