最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

JavaScript: Is there any performance benefit to stopping event propagation? - Stack Overflow

programmeradmin3浏览0评论

Is it considered 'good practice' to stop JavaScript event propagation - does it benefit performance in any way?

I'm wondering if there is benefit outside of layout purposes where you stop propagation so you don't trigger multiple events accidentially.

Is it considered 'good practice' to stop JavaScript event propagation - does it benefit performance in any way?

I'm wondering if there is benefit outside of layout purposes where you stop propagation so you don't trigger multiple events accidentially.

Share Improve this question asked Sep 23, 2009 at 7:35 AlexAlex 77.5k91 gold badges265 silver badges350 bronze badges 2
  • Even if it does, it's squarely within the realm of micro-optimization. It's nothing you would notice in normal use. – slikts Commented Sep 23, 2009 at 7:45
  • This does not explain the benefit of stopping event propagation, but it explains the price you have to pay for it: css-tricks./dangers-stopping-event-propagation – ceving Commented Jan 9, 2024 at 9:49
Add a ment  | 

2 Answers 2

Reset to default 6

It entirely depends on the DOM plexity and the actions taken in each event that is triggered.

You would stop propagating events mainly not because of plexity but because of unwanted actions not to take place.

For example: Consider a situation where you have a show hide div and when you click on the div it should open and if you click anywhere else in the document it should close.

So you would wire an onclick event handler to the document as well as the div. So you have to stop propagating the event when clicked on the div so that the document click handler won't be invoked. That's a situation where you use stop event propagation.

Only when it is necessary to the program logic, such as to prevent form submission or another DOM element's action being triggered. Unless you have a seriously plex DOM tree, there will not be any serious performance hit.

发布评论

评论列表(0)

  1. 暂无评论