12 of 17 menu

JavaScript-ում հղման անցման արգելքի սխալ

Ենթադրենք ունենք հղում.

<a href="">link</a>

Ստացնենք մեր հղումը փոփոխականի մեջ.

let link = document.querySelector('a');

Կապենք մեր հղմանը կլիկի դիտարկիչ: Այս դեպքում կանխարգելենք հղման անցումը, որպեսզի խուսափենք էջի վերաբեռնումից.

link.addEventListener('click', function(event) { console.log(this.textContent); event.preventDefault(); });

Թվում է, թե մենք ամբողջությամբ պաշտպանվել ենք անսպասելի վարքագծից: Իրականում դա այդպես չէ: Բանն այն է, որ երբ առաջանում է շարահյուսական սխալ, JavaScript կոդը պարզապես չի կատարվի, հղման արգելափակումը չի աշխատի, և կիրականացվի անցում դրան:

Այս դեպքում մենք չենք տեսնի ոչ կոդի կատարման արդյունքը, ոչ էլ կոնսոլում սխալ, քանի որ էջը կվերաբեռնվի: Եկեք միտումնավոր սխալ անենք կոդում և համոզվենք գործնականում.

link.addEventListener('click', function(event) { thiss.textContent = 'text'; // շարահյուսական սխալ event.preventDefault(); });

Նման խնդիրն ունի բնորոշ հատկանիշ. եթե դիտենք կոնսոլը կլիկի պահին հղման վրա, մենք ակնթարթորեն կտեսնենք կոնսոլում կարմիր սխալ, որը գրեթե անմիջապես կանհետանա:

Իհարկե, սխալի տեքստը կարդալ մենք հասցնելու չենք, ինչը էապես դժվարացնում է դրա որոնումը: Սակայն, կա մի խորամանկ հնարք: Պետք է href հղման մեջ դնել ռեշոտկա: Այս դեպքում հղման անցում չի տեղի ունենա, և մենք կտեսնենք կոնսոլ նետված սխալ.

<a href="#">link</a>
Հայերեն
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Մենք օգտագործում ենք cookie-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել