Ushbu ochiq manbali loyihani butun dunyo bo'ylab odamlar uchun taqdim etmoqchimiz.

Ushbu qo'llanmaning mazmuni sizning tilingizga tarjima qilishga yordam bering!

darsga qaytish

Nima uchun "aaa" qoladi?

Quyidagi misolda table.remove() chaqiruvi jadvalni hujjatdan olib tashlaydi.

Agar siz uni ishga tushirsangiz, "aaa" matni hali ham ko’rinib turishini ko’rishingiz mumkin.

Nega bunday bo’ladi?

<table id="table"> aaa <tr> <td>Test</td> </tr> </table> <script> alert(table); // stol, xuddi shunday bo'lishi kerak table.remove(); // nega hujjatda hali ham aaa bor? </script>

Vazifadagi HTML noto’g’ri. Bu g’alati narsaning sababi.

Brauzer uni avtomatik ravishda tuzatishi kerak. Lekin <table> ichida matn bo’lmasligi mumkin: spetsifikatsiyaga ko’ra faqat jadvalga xos teglarga ruxsat beriladi. Shunday qilib, brauzer <table> dan * oldin "aaa" ni ko’rsatadi.

Endi stolni olib tashlaganimizda, u qolishi aniq.

Savolga brauzer vositalaridan foydalangan holda DOMni o’rganish orqali osongina javob berish mumkin. Siz <table> oldidan aaa ni ko`rasiz.

HTML standarti yomon HTMLni qanday qayta ishlashni batafsil belgilaydi va brauzerning bunday xatti-harakati to’g’ri.