javascript - jQuery - Si el elemento tiene la clase, haz esto
Necesito un script de jQuery que verifique si algún elemento tiene una clase específica y realice una acción como cambiar la posición.
Este es el camino, pero no creo que esto funcione.
$("a.contact").toggle(function() {
$("#contact").animate({
right: '0'
}, 2000);
if ($("#about").hasClass("opened")) {
$("#about").animate({
right: -700 + "px"
}, 2000);
}
}, function() {
$("#contact").animate({
right: -700 + "px"
}, 2000);
});
Respuesta #1
Primero, te faltan algunos paréntesis en tu condicional:
if ($("#about").hasClass("opened")) {
$("#about").animate({right: "-700px"}, 2000);
}
Pero también puedes simplificar esto a:
$('#about.opened').animate(...);
Si #about no tiene la clase opened, no se animará.
Si el problema es con la animación en sí, necesitaríamos saber más sobre la posición de tu elemento (¿absoluta? ¿absoluta dentro de un padre relativo? ¿tiene el padre un diseño?)
