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

138
Views
¿Hay una mejor manera de apuntar al último elemento hijo del hermano anterior?

Quiero decir que el código funciona, pero en algún momento, me parece un poco extraño, así que me preguntaba si alguien conoce una mejor manera de apuntar al último elemento secundario del elemento hermano anterior.

Básicamente, tengo un control deslizante cuyo valor quiero mostrar con el intervalo de su hermano anterior, por ejemplo:

 <div class="xOffsetBox"> <label for="xOffset" class="xOffsetText">xOffset <span>0 px</span></label> <input type="range" name="xOffset" id="xOffsetRange1" min="-100" max="100" value="0"> </div>

Y, dentro de una función js, obtengo el valor de la entrada de rango.

 function getRangeValue () { for (let i = 0; i < Shadows.length; i++) { let xOffset = document.getElementById(Shadows[i].xOffsetValue).value; let xOffsetSpan = document.getElementById(Shadows[i].xOffsetValue).previousElementSibling.lastElementChild; xOffsetSpan.textContent = xOffset + " px"; }; };
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Probablemente usaría atributos de datos que son bastante útiles. No contaminan su atributo css-class y no es único como id. Además, es bastante fácil de escalar.

No hay mucho que pueda hacer aquí con su consulta, ya que intenta trabajar con un hermano.

La pregunta también es: ¿Qué estás tratando de lograr aquí? ¿Qué es "mejor" en tus propias palabras? ¿Son las líneas de código lo que desea reducir, reducir la complejidad o encontrar una forma alternativa? Puede usar una id , una class o incluso un data-attribute en ese hermano y simplemente acceder a él con document.querySelector o para la búsqueda de identificación: document.getElementById . Realmente depende de lo que intentes lograr.

Podrías, tal vez, optimizarlo así:

 for (let i = 0; i < Shadows.length; i++) { const el = document.getElementById(Shadows[i].xOffsetValue); const xOffset = el.value; const xOffsetSpan = el.previousElementSibling.lastElementChild; xOffsetSpan.textContent = xOffset + " px"; };

De esta forma, no tiene que recorrer el DOM dos veces para encontrar el elemento. También puede usar const en lugar de let , si no desea modificar estos valores. Tal vez incluso use un iterador for-of en su lugar, si lo desea.

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!