الأحداث في JS تتدفق بشكل افتراضي ويتم نشرها طبقة حسب الطبقة. يمكنك إيقاف انتشار الأحداث في مستوى DOM من خلال وظيفة التوقف (). كما في المثال التالي:
رمز HTML:
<! doctype html> <html> <head> <meta charset = "utf-8"/> <title> stopPropagation ()-المستخدمة بواسطة Qiongtai blog </title> </head> <body> <button> زر </button> </body> </html> [/code] no stoppropagation ( document.getElementsByTagName ('button') [0] ؛ button.onclick = function (event) {Alert ('button click') ؛} ؛ document.body.onclick = function (event) {Alert ('body click') ؛}ينتشر DOM الطبقة بأعلى طبقة ، لذا ينتشر النقر فوق الزر أيضًا إلى طبقة الجسم ، لذلك تستجيب نقرة طبقة الجسم أيضًا. نتيجة لذلك ، يطفو مربعان تحذيران ، وهما الزر والجسم.
مضاف التوقف ()
var button = document.getElementsByTagName ('button') [0] // إيقاف حدث نشر التسلسل الهرمي DOM. stoppropagation () ؛} ؛ document.body.onclick = function (event) {Alert ('body click') ؛}يتم استخدام وظيفة StopPropagation () في وظيفة معالجة الأحداث النقر فوق الزر لإيقاف وظيفة انتشار الحدث ، لذلك بعد ظهور مربع التحذير من الحدث النقر فوق الزر ، لا يمكن نشر الجسم ، ولن يظهر صندوق تحذير الجسم مرة أخرى. نتيجة لذلك ، تتم مناقشة صندوق التحذير مرة واحدة فقط.
عند كتابة JS ، غالبًا ما تتجاهل العديد من أحذية الأطفال خصائص أحداث DOM التي تنشر الطبقة حسب الطبقة ، مما يؤدي إلى تشوهات في البرنامج. إذا كنت بحاجة إلى معرفة المزيد من المعرفة المتعمقة ، فيمكنك العثور على معلومات حول فقاعات أحداث JS.