Cómo usar Jquery para colorear el fondo de un elemento, basado en palabras clave dentro del html

Estoy tratando de usar Jquery para identificar primero palabras específicas dentro de una etiqueta de intervalo y luego colorear el fondo de un div en el que está anidado. El HTML se ve así:

<div class="highlight item1 ll3">
<div class="Image">
<h2 class="Name">
<div class="type">
<span>Workshop</span>
</div>
   <div class="Dates">
   <p class="Desc">Toddlers are especially welcome to BALTIC on Tuesdays. Join 
    in the fun, as a BALTIC artist leads a practical session using a variety of       
    materials,...
</p>

Entonces creo que necesito usar Jquery para identificar si es igual a "Workshop" y luego colorear el div con class highlight (por ejemplo, establezca el fondo en # 000). Necesito repetir esto para que cada div.highlight que tenga un valor diferente reciba un color diferente.

Muchas gracias de antemano.

Jason

preguntado el 08 de noviembre de 11 a las 17:11

3 Respuestas

Algo como esto debería funcionar:

$(document).ready(function(){
    $("span:contains('Workshop')").parent().css({ "background-color" : "#f8f8f8" });
});

respondido 09 nov., 11:19

Hola James, muchas gracias por tu tiempo y esfuerzo. Soy nuevo en jquery, así que supuse que necesito agregar la línea 'documento listo' en el código: if $(document).ready(function(){ $("span:contains('Workshop')").parent().css({ "background-color" : "#f8f8f8" }); }); desafortunadamente no puedo hacerlo funcionar. Jason - Yippyj

No necesitas un if declaración para comprobar el estado del documento listo. Simplemente copie el código de mi ejemplo anterior. - James Johnson

Hola James, gracias de nuevo, tuve que modificar un poco el código como puedes ver, pero lo tengo funcionando. Solo está coloreado el fondo div.type y no div. ¿Resalta alguna idea? $(document).ready(function(){ $("span:contains(Workshop)").parent().css( "background- color","red" ); }); - Yippyj

Me alegro de que lo hayas hecho funcionar. Asegúrese de marcar la respuesta si está satisfecho. Programación feliz;) - James Johnson

Consulte este ejemplo si está buscando agregar CSS basado en palabras clave

http://tinkerbin.com/q6GwDrvJ

respondido 08 nov., 11:22

-1: ¿Cómo responde esto a la pregunta? No tiene nada que ver con lo que se pregunta ... - James Johnson

lo siento, soy nuevo en esto, no sabía que tenía que responder con el problema dado. Solo di un ejemplo: tmjam

Su respuesta ignora la mayor parte de la pregunta. OP está buscando palabras clave en un <span> y busca aplicar el color de fondo al elemento principal. Tu respuesta no logra ninguno de estos. - James Johnson

<script type="text/javascript"> 
    $(document).ready(function(){ 
        $("span:contains(Workshop)").parent().css( "background-color","red" ); 
    }); 
</script>

respondido 10 nov., 11:19

Esto es casi un duplicado exacto de mi respuesta. Verifique las otras respuestas primero antes de publicar una respuesta casi idéntica. - James Johnson

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.