2012-02-27 28 views
8

Tengo varios divs:cómo ocultar todos los divs en jQuery

<div id="div-1"></div> 
<div id="div-2"></div> 
<div id="div-3"></div> 
<div id="div-4"></div> 

¿Cómo puedo ocultar todo con jQuery. Usé $('#div').hide(); y no funcionó.

+2

'# div' seleccionará el elemento con ID' div'. jQuery tiene una buena documentación sobre los selectores que puede usar, debe echarle un vistazo: http://api.jquery.com/category/selectors/. ¿Por qué crees que '$ ('# div')' debería funcionar? –

Respuesta

17

está usando el una identificación en tu selector. Simplemente use:

$('div').hide(); 

Sin embargo, eso ocultará literalmente todos los divs. ¿Qué tal si oculta solo divs que tienen una identificación en forma de div-x?

$('div[id^="div-"]').hide(); 

Esto solo ocultará los divs que mencionaste sin ocultar otros divs (lo que podría ser problemático).

+0

funciona igual que yo lo necesito – Mythriel

+0

Respuesta perfecta. Thnx. –

6

para más detalles puede leer esto: Element Selector (“element”)

esto va a hacer: $('div').hide();

no hay necesidad de signo #, que es para el selector de ID para jQuery, si desea ocultar el elemento acaba de escribir el nombre del elemento hará su tarea que se llama como "selector de elementos".

5

sacar la almohadilla y sólo hacer $('div').hide(); porque en este momento usted está ocultando todos los elementos con un id de "div"

5

El problema es que está especificando un ID en su selector. Use esto en su lugar:

$('div').hide(); 
1

$ ('div'). Hide(); debería funcionar

$ ('# div') busca id = "div" en lugar de buscar todos los divs.

1

$('#div').hide();

no funciona porque estás pasarlo por algo con ID = "div" y ha configurado su id de "div-1", etc.

En lugar de tratar

$('#div-1').hide(); 
    $('#div-2').hide(); 

etc

Eso ocultará los div's específicos mencionados.

Si realmente desea ocultar todos los divs en su página entonces

$('div').hide(); 
5

jQuery usa CSS-selectores, por lo que este oculta todos los divs:

$('div').hide(); 

Sin embargo, si se desea ocultar la divs cuya id comienza con "div", como en el ejemplo, hacer esto:

$('div[id^="div"]').hide(); 
0

#div el elemento que está id es div, si desea ocultar todos los div en la página, el selector que desea es sólo div (utilizar $('div').hide()).

No creo que eso sea lo que realmente quiere, sin embargo, casi seguro no quiere ocultar cada div en la página. Parece que estás tratando de ocultar varios div s específicos de una vez. La forma de hacerlo es separar el id con una coma: $('#div-1,#div-2,#div-3,#div-4').hide().

Alternativamente, una mejor manera de hacerlo es agregar un class a los div s en caso de que desee cambiar el número de div s.

Así que para ocultar:

<div id="div-1" class="foo"></div> 
<div id="div-2" class="foo"></div> 
<div id="div-3" class="foo"></div> 
<div id="div-4" class="foo"></div> 

Se podría utilizar $('.foo').hide().

1

asignar una clase a todos los divs que desee ocultar y luego hacer algo como

$('.hider').hide() 

Esto ocultar todos los divs con que ocultador de clase. Luego puede hacer lo que desee en algunos de los divs

Cuestiones relacionadas