Hvordan få tilgang til det overordnede elementet ved å bruke HTML DOM parentElement-egenskapen

Hvordan Fa Tilgang Til Det Overordnede Elementet Ved A Bruke Html Dom Parentelement Egenskapen



Mens han legger til flere funksjoner i Document Object Model (DOM) ved hjelp av JavaScript, må utvikleren ofte analysere elementets tilknytning. Dette kan oppnås ved å logge det overordnede elementet til målelementet(e) som effektiviserer kodeflyten og formateringen av inkluderte funksjoner på nettstedet.

Innhold Oversikt

Hva er 'parentElement'-egenskapen i JavaScript?

« parentElement ” egenskap i JavaScript henter elementet som er overordnet til målelementet.

Hvordan få tilgang til/påkalle det overordnede elementet via HTML DOM parentElement-egenskapen?

Det overordnede elementet kan nås ved å bruke HTML DOM ' parentElement ' eiendom med ' nodenavn '-egenskapen eller hente det overordnede elementets node i stedet via ' parentNode ' eiendom.







Syntaks



node. parentElement

Returverdi
Denne egenskapen henter et elementobjekt som representerer den overordnede elementnoden til en node og gir ' null ” hvis noden ikke omfatter en forelder.



Brukte vanlige metoder og egenskaper

document.querySelector() : Denne metoden henter det første elementet som samsvarer med CSS-velgeren.





Syntaks

dokument. querySelector ( dette )

I denne syntaksen ' dette ” refererer til en eller flere CSS-velgere.



document.getElementById() : Det returnerer elementet som har den spesifiserte ID-en.

Syntaks

dokument. getElementById ( id )

Her, ' id ” indikerer målelementets ID som skal hentes.

valgt indeks : Denne egenskapen henter det valgte alternativets indeks fra rullegardinlisten. De '-1' alternativet fjerner valget av alle alternativene.

nodenavn : Denne egenskapen henter nodens navn.

barn : Denne egenskapen returnerer elementets underordnede elementer som en samling.

ytreHTML : Denne egenskapen tildeler eller henter HTML-elementet samt dets attributter og start- og sluttkoder.

parentNode : Denne spesielle egenskapen henter overordnet node til et element eller en node.

Merk : Forskjellen mellom ' parentElement ' og ' parentNode '-egenskapen er at den tidligere egenskapen, dvs. 'parentElement' gir ' null ” hvis overordnet node ikke reflekterer en elementnode.

Eksempel 1: Tilgang til overordnet element via 'parentElement'-egenskapen i JavaScript

Dette eksemplet påkaller det overordnede elementet til et element og viser dets (overordnede) nodenavn ved å klikke på knappen.

HTML-kode


< html >
< kropp >
< h1 > parentElement Property i JavaScript < / h1 >
< h2 > Velg språk: < / h2 >
< plukke ut klasse = 'element' >
< alternativ > Python < / alternativ >
< alternativ > Java < / alternativ >
< alternativ > JavaScript < / alternativ >
< / plukke ut >
< knapp ved trykk = 'displayParent()' klasse = 'knapp' > Vis det overordnede elementet til 'alternativ'-elementet < / knapp >
< div klasse = 'temp' >< / div >< / kropp >
< html >

I denne koden:

  • Spesifiser det gitte «

    » og «

    » elementer som omfatter henholdsvis nivå-1- og nivå-to-overskriftene.

  • Etter det oppretter du en «» element representert av den gitte klassen som inneholder de ytterligere underordnede elementene, dvs. « » .
  • Lag nå en knapp knyttet til en ' ved trykk ”-hendelse som omdirigerer til 'displayParent()' funksjon ved å klikke på knappen.
  • Til slutt spesifiser «
    » element der resultatet, dvs. tilgang til overordnet element, skal vises.

CSS-kode

>
kropp {
tekstjustering : senter ;
farge : #fff ;
bakgrunnsfarge : grå ;
høyde : 100 % ;
}
.knapp {
høyde : 2rem ;
grense-radius : 2px ;
bredde : 35 % ;
margin : 2rem auto ;
vise : blokkere ;
farge : #ba0b0b ;
markøren : pekeren ;
}
.temp {
skriftstørrelse : 1,5 rem ;
font-vekt : dristig ;
}
>

I CSS-koden ovenfor:

  • Stil den generelle nettsiden med de anvendte egenskapene 'tekstjustering', 'bakgrunnsfarge' osv.
  • På samme måte kan du bruke stilen på den opprettede knappen via klassen ved å justere høyden, bredden, skjermen, fargen osv.
  • Til slutt stiler du ' div ” ved å referere til klassenavnet der det åpnede overordnede elementet skal vises.

JavaScript-kode



< manus >
funksjon displayForeldre ( ) {
var = dokument. querySelector ( '.element' ) ;
var dette = . alternativer [ . valgt indeks ] ;
var legge til = dokument. querySelector ( '.temp' ) ;
legge til. indreHTML = 'Overordnet element for alternativelementet er -> ' + dette. parentElement . nodenavn ;
}
manus >

I henhold til disse kodelinjene:

  • Definer funksjonen 'displayParent()' som får tilgang til «»-elementet ved å referere til sin klasse via 'document.querySelector()' metode.
  • « alternativer '-samlingen får samlingen av alle ' '-elementene i rullegardinlisten og ' valgt indeks ” egenskap henter det valgte alternativets indeks for rullegardinlisten.
  • Til slutt, bruk 'document.querySelector()' metoden igjen for å få tilgang til «
    »-elementet og legge det til «

Hele koden


< html >
< kropp >
< h1 > parentElement Property i JavaScript < / h1 >
< h2 > Velg språk: < / h2 >
< plukke ut klasse = 'element' >
< alternativ > Python < / alternativ >
< alternativ > Java < / alternativ >
< alternativ > JavaScript < / alternativ >
< / plukke ut >
< knapp ved trykk = 'displayParent()' klasse = 'knapp' > Vis det overordnede elementet til 'alternativ'-elementet < / knapp >
< div klasse = 'temp' >< / div >< / kropp >
< stil >
kropp{
text-align:center;
farge:#fff;
bakgrunnsfarge: grå;
høyde:100%;
}
.knapp{
høyde:2rem;
border-radius:2px;
bredde:35%;
margin:2rem auto;
display:block;
farge:#ba0b0b;
markør:peker;
}
.temp{
font-size:1.5rem;
font-weight:bold;
}
< / stil >
< manus >
funksjon displayParent() {
var get = document.querySelector('.elem');
var sel=get.options[get.selectedIndex];
var append = document.querySelector('.temp');
append.innerHTML='Overordnet element for alternativ Element er -> ' + sel.parentElement.nodeName;
}
< / manus >

Produksjon

Her kan det sees at det overordnede elementet til alle barnenodene, dvs. valgt alternativ fra rullegardinmenyen i « » element returneres, dvs. ' PLUKKE UT '.

Eksempel 2: Tilgang til både overordnet og underordnet element via egenskapene 'parentElement' og 'children' i JavaScript

Følgende kodeeksempel gir tilgang til både overordnet og underordnet element til et bestemt element.

HTML-kode

< html >
< kropp >
< div id = 'foreldre' >
< div id = 'barn' >
< h1 >Første underordnede element< / h1 >
< h1 >Andre underordnede element< / h1 >
< / div >
< / div >
< / kropp >
< / html >

I denne kodeblokken oppretter du to «

»-elementer, og de to «

»-elementene som refererer til underelementene til sistnevnte «
»-element.

JavaScript-kode

< manus >
la = dokument. getElementById ( 'barn' ) ;
la forelder = . parentElement ;
konsoll. Logg ( 'Overordnet element -> ' , forelder. ytreHTML ) ;
konsoll. Logg ( 'Overordnet element nodenavn -> ' , forelder. nodenavn ) ;
la barn = . barn ;
til ( la meg = 0 ; Jeg < barn. lengde ; Jeg ++ ) {
konsoll. Logg ( `Barneelement $ { Jeg } : ` , barn [ Jeg ] . ytreHTML ) ;
}
til ( la meg = 0 ; Jeg < barn. lengde ; Jeg ++ ) {
konsoll. Logg ( `Child Element Node Navn $ { Jeg } : ` , barn [ Jeg ] . nodenavn ) ;
}
manus >

Forklaringen av koden ovenfor er som følger:



  • Få tilgang til det sistnevnte «
    »-elementet ved å bruke «id» ved hjelp av 'document.getElementById()' metoden og hent det overordnede elementet via ' parentElement ' eiendom.
  • Vis nå det overordnede elementet med attributter, og start- og sluttkoder via den brukte ' ytreHTML ' eiendom.
  • Returner også det overordnede elementets navn, dvs. nodenavnet ved å bruke ' nodenavn ” eiendom.
  • Etter det får du tilgang til elementets barn ved å bruke 'barn'-egenskapen.
  • Bruk ' til ”-løkke for å iterere alle underordnede elementer og returnere dem med taggene via den diskuterte “outerHTML”-egenskapen.
  • På samme måte bruker du 'for'-løkken igjen for å returnere nodenavnene til de underordnede elementene også.

Hele koden

< html >
< kropp >
< div id = 'foreldre' >
< div id = 'barn' >
< h1 > Første barneelement < / h1 >
< h1 > Andre barneelement < / h1 >
< / div >
< / div >
< / kropp >
< / html >
< manus >
let get = document.getElementById('barn');
la foreldre = get.parentElement;
console.log('Overordnet element -> ', parent.outerHTML);
console.log('Overordnet element nodenavn -> ', overordnet.nodenavn);
la barn = få.barn;
for(la i =0; i < children.length; i++ ) {
console.log ( `Barneelement $ { Jeg } : `, barn [ Jeg ] .outerHTML ) ;
}
til ( la meg = 0 ; i < children.length; i++ ) {
console.log ( `Child Element Node Navn $ { Jeg } : `, barn [ Jeg ] .nodeName ) ;
}
< / manus >

Produksjon

Dette resultatet innebærer at de overordnede og underordnede elementene til målelementet vises i detalj (sammen med nodenavnene) tilsvarende.

Eksempel 3: Tilgang til overordnet element ved å bruke egenskapen 'parentNode'.

I denne demonstrasjonen kan det overordnede elementet til et bestemt element påkalles, og da vil dette bestemte elementets overordnede element også bli hentet, noe som resulterer i en nestet oppførsel. Dette kan oppnås via ' parentNode ” egenskap i stedet som henter elementets overordnede node.

HTML-kode

< html >
< kropp >
< div id = 'foreldre' >
< ol id = 'temp' >
< at id = 'tempebarn' >Python< / at >
< at >Java< / at >
< at >JavaScript< / at >
< / ol >
< / div > < / kropp >
< / html >

Her oppretter du et '

'-element som videre omfatter elementene '
    (ordnet liste)' og '
  1. (listeelementer)' med de gitte IDene.

    JavaScript-kode

    < manus >
    la = dokument. getElementById ( 'tempchild' ) ;
    la forelder = . parentNode ;
    konsoll. Logg ( 'Overordnet element node av 'li'-> ' , forelder ) ;
    la få 2 = dokument. getElementById ( 'temp' ) ;
    la foreldre 2 = få 2. parentNode ;
    konsoll. Logg ( 'Overordnet element node av 'ol'-> ' , forelder 2 ) ;
    manus >

    Basert på denne kodebiten, utfør trinnene nedenfor:

    • Åpne «
    • »-elementet via « getElementById() '-metoden, få tilgang til det overordnede elementets node ved å bruke ' parentNode ”-egenskapen, og vis den overordnede noden.
    • På samme måte kaller du nå den viste overordnede nodens, dvs. «
        »-foreldre ved å gjenta den samme metoden.

    Hele koden

    < html >
    < kropp >
    < div id = 'foreldre' >
    < ol id = 'temp' >
    < at id = 'tempebarn' > Python < / at >
    < at > Java < / at >
    < at > JavaScript < / at >
    < / ol >
    < / div >
    < manus >
    let get = document.getElementById('tempchild');
    la foreldre = get.parentNode;
    console.log('Overordnet element node av 'li'-> ', overordnet);
    la get2 = document.getElementById('temp');
    la parent2 = get2.parentNode;
    console.log('Overordnet Element Node av 'ol'-> ', overordnet2);
    < / manus >
    < / kropp >
    < / html >

    Produksjon

    Dette resultatet betyr at de overordnede nodene i begge tilfeller vises tilsvarende.

    Konklusjon

    Det overordnede elementet kan nås ved å bruke HTML DOM ' parentElement ' eiendom kombinert med ' nodenavn ”-egenskapen eller hente den overordnede noden via egenskapen “parentNode”. For å få tilgang til underordnet element i stedet, bruk ' barn ” eiendom.