Añadir una clase cuando cambia el valor.

  • Autor Autor BitLiberal
  • Fecha de inicio Fecha de inicio
B

BitLiberal

Gamma
Redactor
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Hola, tengo un foro con un sistema de alertas, pero la forma de avisar es muy poco eficaz.
Lo que necesito es que cuando el valor que muestra el numero de notificaciones tenga una clase nueva a cuando el valor es 0.
Perdon si no me explico bien, pero lo represantare separado:
Cuando el valor de <span id="notificaciones"> sea 0, se quede como esta, pero cuando el valor de este span cambie a 1, a este se le añada una clase, asi por ejemplo: <span id="notificaciones" class="nuevas-notificaciones">1</span>.

Lo unico que he encontrado por internet es esto:
Insertar CODE, HTML o PHP:
$('#Notificaciones').text(numUnread);if(numUnread>0){$('#Notificaciones').addClass('nuevas-notificaciones');}else{$('#Notificaciones').removeClass('nuevas-notificaciones');}

Pero como no se del tema, no me funciona o algo estoy haciendo mal. Advierto que todo lo referido a la maquetacion CSS y HTML es cosa mia, solo necesito ese codigo.

Espero vuestras respuestas, gracias.
 
HTML:
if ( $('#notificaciones').text() == '1' ) $('#notificaciones').addClass('nuevas-notificaciones');
 
HTML:
if ( $('#notificaciones').text() == '1' ) $('#notificaciones').addClass('nuevas-notificaciones');

Muchas gracias, pero no me funciona.

¡Saludos!
 
La respuesta de hugo1 es buena, pero habria que cambiar text pot html y, si no he entendido mal, querías que cambiara, no cuando el valor fuera 1, si no cuando fuera distinto de 0:

if ($('#notificaciones').html() != '0'){
$('#notificaciones').addClass('nuevas-notificaciones');
}
 
La respuesta de hugo1 es buena, pero habria que cambiar text pot html y, si no he entendido mal, querías que cambiara, no cuando el valor fuera 1, si no cuando fuera distinto de 0:

if ($('#notificaciones').html() != '0'){
$('#notificaciones').addClass('nuevas-notificaciones');
}

He estado probando, incluso
Insertar CODE, HTML o PHP:
<script type="text/javascript">
$(document).ready(function(){
if ($('#notificaciones').html() != '0'){
$('#notificaciones').addClass('nuevas-notificaciones');
} 
});
</script>
con jquery y nada.

Comento que obviamente, tengo la libreria jQuery.
 
Solo se me ocurre que revises los nombre de las capas (en el primer mensaje comienza con mayúscula) y que cambies un poco el if:

if (parseInt($('#notificaciones').html()) > 0){

A ver si con esto hay más suerte...
 
Tendría que ver el código para saber que estas haciendo mal.
 
Atrás
Arriba