簡體   English   中英

JavaScript:停止事件傳播對性能有好處嗎?

[英]JavaScript: Is there any performance benefit to stopping event propagation?

停止JavaScript事件傳播是否被認為是“好的做法”-它以任何方式提高性能嗎?

我想知道布局目的之外是否有其他好處,您可以其中停止傳播,以免意外觸發多個事件。

它完全取決於DOM的復雜性以及在觸發的每個事件采取的措施

您將停止傳播事件的原因主要不是因為復雜,而是因為不必要的操作不會發生。

例如:考慮這樣一種情況:您有一個show hide div,並且當您單擊div時,它應該彈出,如果您單擊文檔中的其他任何位置,它都應該關閉。

因此,您可以將onclick事件處理程序連接到文檔以及div。 因此,當您在div上單擊時,您必須停止傳播該事件,以便不會調用文檔單擊處理程序。 那就是您使用停止事件傳播的情況。

僅在程序邏輯必要時(例如,防止表單提交或另一個DOM元素的動作被觸發)。 除非您有一個非常復雜的DOM樹,否則不會對性能造成任何嚴重的影響。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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