2012-02-27 27 views
8

Ho diversi div:come nascondere tutti i div in jQuery

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

Come li ho nascondere con jQuery. Ho usato $('#div').hide(); e non ha funzionato.

+2

'# div' selezionerà l'elemento con ID' div'. jQuery ha una buona documentazione sui selettori che puoi usare, dovresti dare un'occhiata a questo: http://api.jquery.com/category/selectors/. Perché pensi che '$ ('# div')' dovrebbe funzionare? –

risposta

17

state usando un ID nel tuo selezionatore. Semplicemente utilizzare:

$('div').hide(); 

Tuttavia questo nasconderà letteralmente tutti i div. Che ne dici di nascondere solo le div che hanno un ID nella forma di div-x?

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

Questo nasconderà solo i div che hai menzionato senza nascondere altri div (che potrebbero essere problematici).

+0

funziona proprio come ne ho bisogno – Mythriel

+0

Risposta perfetta. Thnx. –

6

per maggiori dettagli si può leggere questo: Element Selector (“element”)

questo farà: $('div').hide();

non c'è bisogno di # segno che è per il selettore di ID per jQuery, se si desidera nascondere elemento basta scrivere il nome dell'elemento farà il tuo compito, chiamato "selettore di elementi".

5

Estrarre l'hash e solo fare $('div').hide(); perché in questo momento si sta nascondendo tutti gli elementi con una id di "div"

5

Il problema è si specifica un id nel selettore. Utilizzare invece:

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

$ ('div'). Hide(); dovrebbe funzionare

$ ('# div') cerca id = "div" piuttosto che cercare tutti i div.

1

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

non funziona perché si sta Lookin per qualcosa con ID = "div" e si è impostato il id a "div-1", ecc

Invece di cercare

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

ecc.

Ciò nasconderà le specifiche div menzionate.

Se davvero si vuole nascondere tutti i div sulla vostra pagina quindi

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

jQuery utilizza CSS-selettori, quindi questo nasconde tutti i div:

$('div').hide(); 

Tuttavia, se si desidera nascondere il div cui id inizia con "div", come nel tuo esempio, fare questo:

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

#div l'elemento che è id è div, se si desidera nascondere ogni div sulla pagina poi il selettore che si desidera è solo div (utilizzare $('div').hide()).

Non penso che sia quello che vuoi veramente, ma quasi certamente non vuoi nascondere ogni div sulla pagina. Sembra che tu stia cercando di nascondere diversi specifici div s in una volta sola. Il modo per farlo è quello di separare il id con una virgola: $('#div-1,#div-2,#div-3,#div-4').hide().

In alternativa, un modo migliore per farlo è aggiungere uno class a quelli div s nel caso in cui si desideri modificare il numero di div s.

Quindi, per nascondere:

<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> 

Si potrebbe utilizzare $('.foo').hide().

1

assegnare una classe a tutti i div che si desidera nascondere e quindi fare STH come

$('.hider').hide() 

Ciò nascondere tutti i div con quella classe Hitler. Quindi puoi fare quello che vuoi su alcune div.

Problemi correlati