Foros del Web » Programando para Internet » Jquery »

dudas con la propiedad .width(); de jquery

Estas en el tema de dudas con la propiedad .width(); de jquery en el foro de Jquery en Foros del Web. tengo un problema. quiero desaparecer un elemento cuando el ancho de pantalla 700px hacia abajo y que se desaparezca también cuando sea mayor a 800px. ...
  #1 (permalink)  
Antiguo 29/12/2014, 18:16
 
Fecha de Ingreso: agosto-2014
Mensajes: 48
Antigüedad: 5 años, 4 meses
Puntos: 1
dudas con la propiedad .width(); de jquery

tengo un problema. quiero desaparecer un elemento cuando el ancho de pantalla 700px hacia abajo y que se desaparezca también cuando sea mayor a 800px.

pero no me funciona el codigo:
(gracias de ante mano)

<script type="text/javascript">
$(function() {
var resea = $('#resea');
buscador = $('input.min-buscador');
buscadorHeight = buscador.height();

$(resea).on('click', function(e) {
e.preventDefault();
buscador.fadeToggle();
});
});

$(window).resize(function(){
var z = $(window).width();
if(z < 700, z > 800 && buscador.is(':hidden')) {
buscador.removeAttr('style');
}
});
</script>
  #2 (permalink)  
Antiguo 29/12/2014, 18:25
(Desactivado)
 
Fecha de Ingreso: enero-2013
Mensajes: 289
Antigüedad: 6 años, 10 meses
Puntos: 10
Respuesta: dudas con la propiedad .width(); de jquery

¿por qué no usas media queries para hacer desparecer elementos ?
  #3 (permalink)  
Antiguo 29/12/2014, 18:29
 
Fecha de Ingreso: agosto-2014
Mensajes: 48
Antigüedad: 5 años, 4 meses
Puntos: 1
Respuesta: dudas con la propiedad .width(); de jquery

Porque ya estoy usando media queries para ocultar el elemento... el elemento esta oculto desde un principio.
  #4 (permalink)  
Antiguo 30/12/2014, 03:26
Avatar de Alexis88
Objetivista
 
Fecha de Ingreso: noviembre-2011
Ubicación: Lima, Perú
Mensajes: 5.433
Antigüedad: 8 años, 1 mes
Puntos: 933
Respuesta: dudas con la propiedad .width(); de jquery

Como bien te aconseja moginn, estas cosas son mejor hacerlas con CSS pues no funcionará con aquellos usuarios que desactiven JavaScript de su navegador. Por otra parte, la condición está mal escrita, pues esto:

Código Javascript:
Ver original
  1. if(z < 700, z > 800 && buscador.is(':hidden')) {

Debería de ser así:

Código Javascript:
Ver original
  1. if ((z < 700 || z > 800) && buscador.is(':hidden')) {

Fíjate que uso el operador lógico OR para tomar uno de ambos casos y encapsulo esa respuesta para luego compararla con la tercera parte de la condición.

Saludos
__________________
«Laissez faire et laissez passer, le monde va de lui même»
  #5 (permalink)  
Antiguo 30/12/2014, 09:03
 
Fecha de Ingreso: agosto-2014
Mensajes: 48
Antigüedad: 5 años, 4 meses
Puntos: 1
Respuesta: dudas con la propiedad .width(); de jquery

Me gusto tu respuesta, gracias. Pero me gustaria que me aclares algo. Antes de que contestaras me puse a investigar y logre esto... el problema es que el o los elementos no se ocultan exactamente a la anchura que les indico. el de 700 se oculta aproximadamente a 717 y asi. Por que pasa esto?

Gracias de ante mano :)

$(function() {
var resea = $('#resea');
buscador = $('input.min-buscador');
buscadorHeight = buscador.height();

$(resea).on('click', function(e) {
e.preventDefault();
buscador.fadeToggle();
});
});

$(window).resize(function(){
var resolutionh=$(window).height();
var resolutionw=$(window).width();
if(resolutionw<=700)
{
jQuery(".min-buscador, .conten_mi-cuenta").hide();
}
if(resolutionw>750)
{
jQuery(".min-buscador").hide();
}
});
  #6 (permalink)  
Antiguo 30/12/2014, 10:03
Avatar de Alexis88
Objetivista
 
Fecha de Ingreso: noviembre-2011
Ubicación: Lima, Perú
Mensajes: 5.433
Antigüedad: 8 años, 1 mes
Puntos: 933
Respuesta: dudas con la propiedad .width(); de jquery

Lee lo que dice la documentación oficial. Puede ser que se trate —como en el primer ejemplo que muestran— de un tema de márgenes, relleno y borde.

Saludos
__________________
«Laissez faire et laissez passer, le monde va de lui même»

Etiquetas: dudas, propiedad, width
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 07:46.