2011-06-24 59 views
1

我希望有人能幫助我。我無法加載這個變量。現在我有一個圖像,當文檔準備就緒時正在顯示。它有一個ID。所以我試圖捕獲這個ID並提醒它,但是當我嘗試使用.attr()時,它給了我一個未定義的變量。但是,當我使用完全相同的腳本時,在另一個窗口加載下,第一個警告提示我未定義,第二個警告給我正確的ID。文檔加載後加載單個變量

我的腳本:

window.onload = function() { //first onload gives undefined 
    var imgID = $('.selector').attr('id'); 
    alert(imgID); 
}; 

$(document).ready(function(){ //gives me correct id 
    var imgID = $('.selector').attr('id'); 
    alert(imgID); 
}); 

這兩個功能都放在同一個頁面中。所以當第一個警報彈出時,它會給頁面加載時間,然後彈出第二個警報來捕獲圖像ID。

所以我想我試圖在頁面加載後得到id?有人可以幫助我如何做到這一點?謝謝

回答

1

做我想要完成的,我只是來設置時間間隔。

0

即使沒有window.onload,document.ready也應該可以正常工作。順便說一句,你可以使用jQuery的$()縮寫的document.ready:

$(function() { 
    var imgID = $('.selector').attr('id'); 
    alert(imgID); 
}); 
+1

我想在頁面加載後立即加載。如果我在同一時間加載所有內容,我會變得不確定。這就是爲什麼我有一個例子,爲什麼我加載兩次。 – hellomello

0

$(文件)。就緒應足以這裏一旦DOM已經加載的功能開始。你說它適合你,所以我不明白問題在哪。您可以刪除window.onload並使用$(document).ready。

http://www.learningjquery.com/2006/09/introducing-document-ready

+0

如果我沒有首先加載的東西,它會變得不確定。一切都被加載在一起。如果我刪除window.onload,我只會得到一個未定義的警報 – hellomello