Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

245
Views
Componente web personalizado: ¿cómo puedo agregarlo al comienzo del <cuerpo> independientemente de dónde se use el componente?

Un caso de uso para esto es crear un componente de alerta de página personalizado

 <page-alert data-alertHeading='You are in danger' data-alertInfo ="This is a description of why you are in danger."> </page-alert>

normalmente, el HTML con plantilla se agregaría donde se usó el código del componente en la página con:

 this.attachShadow({mode: 'open' }); this.shadowRoot.appendChild(template.content.cloneNode(true));

Sin embargo, me gustaría agregar este componente personalizado al cuerpo para que sea el primer elemento que sigue a la etiqueta del cuerpo de apertura y siempre aparecerá en la parte superior de la página. ¿Cómo puedo hacer para lograr eso?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Desde dentro de su componente:

 document.body.insertBefore(this, document.body.firstChild); // or, for evergreen browsers, if you don't care about IE: document.body.prepend(this);

Desde el exterior, si su elemento ya está en el DOM pero necesita ser movido:

 document.body.insertBefore(document.querySelector('page-alert'), document.body.firstChild); // or, for evergreen browsers, if you don't care about IE: document.body.prepend(document.querySelector('page-alert'));
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!