簡體   English   中英

Polymer中的事件委托

[英]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.speciala.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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM