2010-09-06 8 views
30

L'elemento è:.remove attribute display: none; modo da l'articolo sarà visibile

span { 
    position:absolute; 
    float:left; 
    height:80px; 
    width:150px; 
    top:210px; 
    left:320px; 

    background-color:yellow; 

    display:none;     //No display     
    border: 3px solid #111; 
} 

io uso questo codice per rimuovere il display in modo che possa essere visibile,

$ ("span") removeAttr ("visualizzazione ");

ma non funziona. Il metodo che sto usando è valido o esiste un altro modo per ottenere il risultato?

risposta

43

A tal fine particolare $("span").show() dovrebbe essere abbastanza buono.

23

$('#lol').get(0).style.display=''

o ..

$('#lol').css('display', '') 
12

La funzione removeAttr() rimuove solo gli attributi HTML. display non è un attributo HTML, è una proprietà CSS. Ti piacerebbe usare la funzione css() per gestire le proprietà CSS.

Ma jQuery offre una funzione show() che fa esattamente quello che vuoi in una chiamata concisa:

$("span").show(); 
0

Il jQuery che si sta utilizzando è manipola il DOM, non il CSS per sé. Provare a cambiare la parola span nel CSS per .mySpan, quindi applicare tale classe ad uno o più elementi DOM nel codice HTML in questo modo:

... 
<span class="mySpan">...</span> 
... 

Quindi, cambiare il vostro jQuery come segue:

$(".mySpan").css({ display : inline }); 

Questo dovrebbe funzionare molto meglio

Buona fortuna!

+0

questo conserva lo stile originale, buono, grazie! – roberthuttinger

3

È necessario rimuovere "stile" attributo al posto di "visualizzazione" proprietà:

$("span").removeAttr("style"); 
+1

Se si rimuove lo stile, si ripristina completamente lo stile. Non penso che qualcuno che apre questa domanda voglia farlo. –

0

Se avete intenzione di nascondere mostrare un po 'campata in base a evento click che inizialmente è nascosta con style = "display: none" quindi .toggle() è l'opzione migliore da seguire.

$ ("span"). Toggle();

Motivi: Ogni volta che non è necessario verificare se lo stile è già lì o meno. .toggle() si prenderà automaticamente cura di questo e nasconde/mostra lo span in base allo stato corrente.

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="button" value="Toggle" onclick="$('#hiddenSpan').toggle();"/> 
 
<br/> 
 
<br/> 
 
<span id="hiddenSpan" style="display:none">Just toggle me</span>

Problemi correlati