Foros del Web » Programando para Internet » Jquery »

ocultar un div según su class con jquery

Estas en el tema de ocultar un div según su class con jquery en el foro de Jquery en Foros del Web. No suelo usar mucho jquery así que planteo mi duda a ver si alguien sabe decirme. Código HTML: <script language= "javascript" > $(document).ready(function() { $(".laclasequequieroocultar").hide(); ...
  #1 (permalink)  
Antiguo 02/10/2010, 12:49
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Pregunta ocultar un div según su class con jquery

No suelo usar mucho jquery así que planteo mi duda a ver si alguien sabe decirme.

Código HTML:
<script language="javascript">
$(document).ready(function() {
    $(".laclasequequieroocultar").hide();
});
</script> 

Esto siempre me ha servido para ocultar la clase que quiero.
Ahora bien, añadí el script de google para poner el traductor en la página web y he intentando quitar algunos div que coloca. Sobre todo para borrar la línea "Con la tecnología de Traductor de Google" y no hay forma.
Tampoco puedo editar el estilo con jquery.

Como ya dije lo mio no es jquery, pero ¿No se supone que al añadir $(document).ready(function() { el código se ejecuta cuando el DOM está listo?

Si esto es así ¿Como es que google lo machaca?

Un saludo y gracias

Edit: en el resto de div funciona correctamente
  #2 (permalink)  
Antiguo 02/10/2010, 17:28
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Tema movido desde javascript
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 02/10/2010, 17:51
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: ocultar un div según su class con jquery

pueden ser por varias razones: google sobreescribe el evento ready en alguna parte, o define una función propia para $ lo que machaca jquery, podrías intentar usar la sintaxis de jQuery NoConflict para evitarlo
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #4 (permalink)  
Antiguo 03/10/2010, 05:06
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: ocultar un div según su class con jquery

Cita:
Iniciado por maycolalvarez Ver Mensaje
pueden ser por varias razones: google sobreescribe el evento ready en alguna parte, o define una función propia para $ lo que machaca jquery, podrías intentar usar la sintaxis de jQuery NoConflict para evitarlo
Ya probé y me pasa lo mismo. Si borro la primera capa funciona perfectamente con el noConfict pero si quiero hacerle el hide() a alguna de sus clases que tiene dentro de los div no pasa nada.

Muchas gracias por el enlace de todas formas, pues me sirvió para corregir otra cosa.
Había mirado algo de la documentación de jquery pero más en relación a los efectos.
  #5 (permalink)  
Antiguo 03/10/2010, 08:14
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: ocultar un div según su class con jquery

Cita:
¿No se supone que al añadir $(document).ready(function() { el código se ejecuta cuando el DOM está listo?
si, esto es así.

Cita:
$(".laclasequequieroocultar").hide();
Ese codigo es bueno. No se si siempre funcione... Pero probaste también esto?

$(".laclasequequieroocultar").css("visibility":"hi dden");

o

$(".laclasequequieroocultar").css("display":"none" );
  #6 (permalink)  
Antiguo 04/10/2010, 05:11
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: ocultar un div según su class con jquery

Cita:
Iniciado por mayid Ver Mensaje
$(".laclasequequieroocultar").css("visibility":"hi dden");

o

$(".laclasequequieroocultar").css("display":"none" );
Con el script de google se añade el traductor detro de este div:
<div id="google_translate_element"></div>

Ese div puedo ocultarlo perfectamente y mostrarlo, pero no sirve con el href que coloca Google--> class="goog-logo-link" y quería eliminar la publicidad de: Con la tecnología de Google Traductor
Sobre todo porque me modificaba el otro div donde estaba.

Como ya dije no conozco mucho de Jquery pero me parece que el separador entre la propiedad de la CSS es una coma ( , ) y no dos puntos ( : )

$(".goog-logo-link").css("visibility","hidden");
$(".goog-logo-link").css("display","none"); Yo me decantaba por esta.

De todas formas tampoco resultó.

Muchísimas gracias a todos por sus respuestas. Al final adapte la hoja de estilo para que no me destrozara el script de google la página y a conformarse

Saludos
  #7 (permalink)  
Antiguo 04/10/2010, 06:12
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 14 años, 4 meses
Puntos: 65
Respuesta: ocultar un div según su class con jquery

pasa que google te esta insertando contenido, es como que quieras ocultar algo que todavia no existe

no es lo mismo esto
$('#div').hide();
$('body').append("<div id='div'>El div</div>");

que esto
$('body').append("<div id='div'>El div</div>");
$('#div').hide();


en vez de ready proba con load pero igual no creo que funcione
  #8 (permalink)  
Antiguo 04/10/2010, 08:06
Avatar de tredio  
Fecha de Ingreso: noviembre-2008
Ubicación: Carabobo
Mensajes: 466
Antigüedad: 15 años, 5 meses
Puntos: 66
Respuesta: ocultar un div según su class con jquery

es cierto para hacerlo de esta manera $(".goog-logo-link").css("visibility","hidden"); es con coma(,) pero tambien hay una forma de hacerlo con dos puntos(:) que seria asi
$(".goog-logo-link").css({"visibility":"hidden"}); lo mas probable como dice dany es que tu estes tratando de ocultar el div antes de que se haya creado y es por eso que no pasa nada.

una solucion que me ocurre que no se si seria del todo correcta, es que crees un setInterval y vayas preguntando dentro de el si el div ya se creo, cuando eso pase, lo ocultas y limpias el intervalo.
__________________
Extension Google Chrome
dar las gracias no cuesta nada :D
  #9 (permalink)  
Antiguo 04/10/2010, 08:42
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: ocultar un div según su class con jquery

Siguiendo con la misma logica, se podría declarar una funcion CSS así:

Código CSS:
Ver original
  1. .goog-logo-link{display:none !important}

...con lo cual te evitas usar jquery.
  #10 (permalink)  
Antiguo 04/10/2010, 14:55
Avatar de tredio  
Fecha de Ingreso: noviembre-2008
Ubicación: Carabobo
Mensajes: 466
Antigüedad: 15 años, 5 meses
Puntos: 66
Respuesta: ocultar un div según su class con jquery

=o muchisimo mejor asi, ni me pasaba por la mente el css jeje, aveces la solucion es mucho mas facil de lo que uno imagina.
__________________
Extension Google Chrome
dar las gracias no cuesta nada :D
  #11 (permalink)  
Antiguo 06/10/2010, 09:06
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: ocultar un div según su class con jquery

Cita:
Iniciado por mayid Ver Mensaje
Siguiendo con la misma logica, se podría declarar una funcion CSS así:

Código CSS:
Ver original
  1. .goog-logo-link{display:none !important}

...con lo cual te evitas usar jquery.
jajajjaa antes de pensar en Jquery ya había probado con CSS.
Y siento decirte que con css no es válido.
Ten en cuenta que esa clase lo añade el script de google. No está en la página.

Para intentar explicarme mejor:

//El div que contiene el traductor:
Código HTML:
<div id="google_translate_element"></div> 
Es dentro de este div donde google añade toodo lo demás, y si no me equivoco esto lo añade después de cargar la página, por lo que la CSS no es la solución, y por eso use Jquery.
Aunque finalmente acabe mostrando todo haciendo click en un enlace y ocultando todo con otro.

//El script indicando en que div vuelca el contenido:
Código HTML:
<script type="text/javascript">
function googleTranslateElementInit() {
new google.translate.TranslateElement({
   pageLanguage: 'es'
 }, 'google_translate_element');
}
</script>
<script src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script> 
De nuevo gracias por contestar.
Un saludo.

EDIT: De todas formas probé a tu manera con el !important, que yo no lo creí que eso cambiase nada pero así tampoco como imaginé.
EDIT2: Miraré lo del setInterval.

Etiquetas: class
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:46.