2010-02-07 15 views

risposta

1

Durante questa operazione, si desidera disabilitare l'utente/l'input?

Controllare questo: http://malsup.com/jquery/block/

elementi di blocco: http://malsup.com/jquery/block/#element

blocco intera pagina: http://malsup.com/jquery/block/#page

Rgds

+0

Ho bisogno di linee semplici per fare questo lavoro. Non un plugin. – user198729

+2

sicuro; quindi controlla la risposta di jeerose. Tuttavia, non si sovrapporrà ai menu a discesa e ai componenti ActiveX come flash o javaapplet. – effkay

+0

+1 effkay: corretto (re: activeX). @ user198729 hai bisogno di un plugin per questo a meno che tu non voglia fare un sacco di programmazione! – jay

0

per renderlo a schermo intero, impostare questi stili:

position: absolute; 
top: 0; 
left: 0; 
width: 100%; 
height: 100%; 

Superiore in alto, imposta il valore z-index su un valore superiore rispetto al resto degli elementi sulla pagina.

È possibile impostare tutti questi con un foglio di stile, quindi utilizzare solo jQuery per mostrare/nascondere il div.

24

definire uno stile overlay o qualcosa del genere così:

<style> 
    .overlay { 
    position:absolute; 
    top:0; 
    left:0; 
    width:100%; 
    height:100%; 
    z-index:1000; 
    } 
</style> 

Quindi è possibile aggiungere la nuova classe come questa utilizzando jQuery:

$('#myDiv').addClass('overlay'); 

Se si desidera aggiungere un evento click si farebbe fare qualcosa del genere:

$('a').click(function(){ 
    $('#myDiv').addClass('overlay'); 
} 

Oppure, è possibile aggiungere display:none a la classe .overlay quindi è nascosto al caricamento della pagina, quindi avere il vostro jQuery click funzione spettacolo come questo:

$('a').click(function(){ 
    $('.overlay').show('slow'); 
} 
+0

Come inserire tutte le parti css in jQuery? – user198729

+0

non c'è bisogno di metterli; basta definire la classe nel tuo file CSS; e poi nel tuo Javascript, effettua questa chiamata "$ ('# myDiv'). addClass ('overlay');".Aggiungerà automaticamente tutti questi attributi – effkay

+1

È possibile che si desideri rendere l'overlay 'position: fixed' in modo che rimanga visibile sull'intera viewport anche quando l'utente scorre la pagina. –

3

intero schermo ajax loader, con una certa opacità.

utilizzando

$('#mydiv').show(); 
$('#mydiv').hide(); 

per attivarla.

#mydiv { 
    position:absolute; 
    top:0; 
    left:0; 
    width:100%; 
    height:100%; 
    z-index:1000; 
    background-color:grey; 
    opacity: .8; 
} 

.ajax-loader { 
    position: absolute; 
    left: 50%; 
    top: 50%; 
    margin-left: -32px; /* -1 * image width/2 */ 
    margin-top: -32px; /* -1 * image height/2 */ 
    display: block;  
} 

<div id="mydiv"> 
    <img src="lib/jQuery/images/ajax-loader.gif" class="ajax-loader"/> 
</div> 
Problemi correlati