2011-03-01 26 views
0

我想到的第一件事是做一個容器中,並讓它完全在頁面loadding的開頭畫面,雖然元素仍然被加載預加載面具後面,像怎樣才能讓與jQuery頁面的預加載的效果呢?

var window_width = $(window).width(); 
    var window_height = $(window).height(); 

    $('.pre-modal-window').each(function() { 

     var modal_height = parseInt($('.pre-modal-window').css("height")); 
     var modal_width = parseInt($('.pre-modal-window').css("width")); 

     var top = (window_height - modal_height)/2; 
     var left = (window_width - modal_width)/2; 

     $(this).css({ 'top': top, 'left': left }); 

    }) 

     //set display to block and opacity to 0 so we can use fadeTo 
     $('#pre-mask').css({ 'display': 'block', opacity: 0 }).fadeTo(50, 1.0); 

     //show the modal window 
     $('.pre-modal-window').fadeIn(500); 

設置它通過使用setInterval()函數幾秒鐘(以及我konw它是假的,但我卻不知道如何判斷元素已經下載了......)後消失。

它就像jQuery插件queryloader不過,簡化版,它在工作以及我的project.So我想要寫一個我自己

以上時,頁面只是在我的網頁幾個要素唯一的工作中所描述的思想,當元素變得越來越多,再簡化版,影響工作......我怎樣才能讓它顯示在頁面開始下載?順便說一句,我怎麼能判斷所有的元素都已經下載了嗎?謝謝

回答

2

有無該文檔看看jQuery的。就緒()函數:http://api.jquery.com/ready/

從jQuery API:指定 函數來執行當DOM 滿載。

一個例子是如下:

<script type="text/javascript"> 
$(document).ready(function() { 
    // hide the loading mask here. 
}); 
</script> 
+0

絕對我把jQuery代碼在$(函數(){}); – hh54188 2011-03-01 11:55:56

+0

我的意思,是在頁面的最後定義腳本塊,並附加一個事件處理程序,當頁面的DOM完全加載執行。我會修改我的答案來說明。 – FarligOpptreden 2011-03-01 11:57:27

相關問題