2012-12-07 14 views
16

Mümkün olan tüm CSS stillerine sahip olabilecek bir 'konteyner' DIV'im var: kenar boşluğu, dolgu, kenarlık ve farklı konum (sabit, göreceli, mutlak).Mevcut bir DIV'yi (JQuery'yi kullanarak) kapatmak için bir overlay DIV nasıl eklenir?

'Konteyner' DIV'sinin üstünde bir yükleme simgesi göstermek ve kullanıcının 'konteyner' DIV'undaki herhangi bir kontrolü çalıştırmasını yasaklamak istiyorum.

<div class="container"> 
A lot of content here ... 
</div> 

nasıl bir bindirme DIV ekleyebilir tüm 'konteyner' DIV görünür alanı kaplamaktadır (JQuery kullanarak) (marj alanı kaplı olmamalıdır)?

Saygılarımızla, Zach

cevap

48

şey daha sonra CSS'deki değiştirmek durumunda:

$("<div />").css({ 
    position: "absolute", 
    width: "100%", 
    height: "100%", 
    left: 0, 
    top: 0, 
    zIndex: 1000000, // to be on the safe side 
    background: "url(/img/loading.gif) no-repeat 50% 50%" 
}).appendTo($(".container").css("position", "relative")); 

DEMO:http://jsfiddle.net/jKfTC/

+1

Ayrıca iyi bir fikir '.container olmadığını kontrol etmek olabilir 'pozisyonunu ayarlamadan önce 'statik' konumlandırma ... sadece kodunuzu yeniden kullanılabilir hale getirmek için vardır. –

+4

Tüm stilinizin css dosyanızda tanımlanmasını, jQuery ile anında uygulamaktan ziyade tavsiye etmenizi öneririm. Bunun gibi, http://jsfiddle.net/jKfTC/1/ – 3dgoo

+0

Kapsayının bir sınırı varsa, kenarlık yukarıdaki çözümde ele alınmaz. – Zach

İlgili konular