Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

245
Vistas
Si hay un atributo duplicado en attr(), ¿siempre aplica el último atributo duplicado en jquery?

Estoy muy confundido, solo quiero saber si di un atributo duplicado en attr(), entonces solo puedo aplicar el último atributo ex --> attr({style:'color:yellow',style:'font-family:arial',style:'color:yellow'}) He dado tres del mismo estilo aquí, ¿solo puedo aplicar el último? ¿Es posible aplicar el segundo estilo?

 <!DOCTYPE html> <html> <body> <p id="prg1">first paragraph</p> </body> <script src="C:\Users\SUDARSHAN\Desktop\html_UI\jquery-3.6.0.js"> </script> <script> $('document').ready(function (){ $('#prg1').attr({style:'color:yellow',style:'font-family:arial',style:'color:yellow',style:'border-style:dotted'}); }) </script> </html>
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Entonces, su pregunta es un poco confusa, pero intentaré abordar todos los escenarios posibles:

  1. Su código tiene un error muy grave: no puede tener claves duplicadas en los objetos, independientemente de que se trate de un estilo o una función .attr() . Así que esto está completamente mal; cualquier objeto b = { a: 1, a: 2 } no es válido y no debe usarse, pero el resultado será b === { a: 2 }
  2. Si intenta usar .attr({style:'color:yellow'}).attr({style:'font-family:arial') sí, obtendrá el último ya que la función attr siempre sobrescribe el valor, nunca lo fusiona;
  3. Creo que esto es lo que realmente quieres saber cómo hacer: .attr({ style:'color:yellow; font-family:arial; border-style:dotted'}); vea que cada elemento del estilo esté separado por ';'. Básicamente, cuando usa .attr + estilo, está configurando el atributo de estilo completo para el elemento html, lo que significa un código css completo, por lo que no necesita ni un 'estilo' por accesorio ni un 'atributo' por accesorio; Simplemente configure toda la cadena css en el atributo de estilo, dicho esto, puede tener tantos accesorios css como desee, simplemente divídalos con ';'

EDITAR: he respondido aquí en función de su pregunta, pero como @Phil mencionó en el primer comentario a continuación, puede obtener una mejor solución utilizando .css() de jquery:

 .css({ color: "yellow", fontFamily: "arial", borderStyle: "dotted" });

Tenga en cuenta el uso de camelCase para los accesorios con "-", o en su lugar, coloque el nombre completo del accesorio entre comillas como "estilo de borde"

:)

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda