[英]Event Delegation in Polymer
有什么方法可以將事件委托從外部元素添加到陰影元素?
例如,我希望有人單擊class="special"
的anchor
時觸發特殊功能。
通常(在jquery中):
$('body').on('click', 'a.special', myFunction);
但是,至少在我嘗試過的所有操作中,使用影子DOM似乎都不可能做到這一點。 我真的需要將這些處理程序添加到a.special
每個實例中,因為它們出現在某些模板中嗎?
在您的示例中,您仍然可以將事件委托與自定義元素一起使用:
$('body').on('click', 'my-element', myFunction);
不同之處在於該事件看起來像是來自我的元素,而不是元素的陰影dom內部的a.special
。 這是因為事件模型確實重新定位以隱藏影子dom的實現細節。
您還可以在元素內設置單擊a.special
時a.special
事件的a.special
器: http : //www.polymer-project.org/articles/communication.html#utilizing-event-delegation
有關更復雜的內容,請查看Polymer網站上的Communication&Message Passing 。 特別地, <core-signals>
可以用於類似pubsub的模式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.