بالتأمل في العقد وكيفية هيكلة DOM، وبعد تتنفيذ الكود أدناه، أي مستمع أحداث سيُطلق أولاً عند نقر الصفحة؟
وما هو تفسير سبب وقوعها بذلك الترتيب؟
الكود في الصورة المرفقة:
السلام عليكم
اول شيء خلينا نتكلم عن الDOM
الDOM هو اختصار لDocument Object Model وهو عبارة عن واجهة بين المستخدم و صفحة الHTML المعروضه على المتصفح بيتم التواصل بين المستخدم و الصفحة باستخدام APIs علشان يتحكم في العناصر الموجودة في الشاشة ويعدل الstyle او القيم او غيرها من العمليات.
تطبيق :
My Title <""=a href> My link My header
بالنسبة لسؤالك عن اي كود حيتنفذ الاول الكود الثاني هو الحيتنفذ الاول لأن العناصر في الDOM بيتم ترتيبها بطريقة ال Stack في شكل طبقات والbody موجود فوق ومن بعده الdocument يبقى الclick بيحصل في البداية لل body وبعد كده للdocument .
لو اخدنا مثال على الكود بتاعي الموجود فوق بتاعي الdocument موجود وموجود فوقه الbody وفوق الbody موجود الa
يعني لو عملنا الكود التالي:
<script>
}() document.addEventListener('click', function
;(1)alert ;({
}() document.body.addEventListener('click', function
;(21)alert ;({
$('.list-group-item').on('click', function() {
alert(80);
});
لمن تجي تدوس على الa حيتم التنفيذ كالاتي:
80 من الضغط على ال a
21 من الضغط على ال body
1 من الضغط على الdocument
التعليقات