2013-04-26 42 views
2

我使用ajax從另一頁面加載內容以顯示在頁腳中。它在ff,chrome,safari和opera中運行良好,但它在Internet Explorer中不起作用。我沒有太多的jQuery經驗。這是我的代碼:在Internet Explorer上使用jQuery Ajax的問題​​

$(document).ready(function(){ 
    $(" #footer #achive-box ,.related-archives .archive-post") 
     .load("/_blog/Member_Area_Articles/ .show-archive .BlogPostArchive"); 

    $(".show-archive .BlogPostArchive").css("display", "block"); 
}); 
+0

定義「不工作」 – 2013-04-26 13:24:04

+0

哪個版本的IE? – 2013-04-26 13:24:20

+0

表示我想在頁腳上顯示的內容不在Internet Explorer中運行,並且在螢火蟲中也沒有發現錯誤。 – 2013-04-26 13:26:38

回答

3

的問題是,所述元件.show-archive .BlogPostArchiveload方法,其在本質上是異步的加載,所以,上述顯示用代碼必須被移動到負載完整回調

$(document).ready(function(){ 
    $(" #footer #achive-box ,.related-archives .archive-post") 
    .load("/_blog/Member_Area_Articles/ .show-archive .BlogPostArchive", function(){ 
     $(".show-archive .BlogPostArchive").css("display", "block"); 
    }); 
}); 
+0

我很困惑,爲什麼這不適用於* * only * IE中的OP。這是怎麼回事 – Ian 2013-04-26 13:30:25

+0

啊完全同意。伊恩你需要一個回調函數來使用你正在加載到頁面上的選擇器。我錯過了。 – blackhawk 2013-04-26 13:32:41

+0

好呼叫哥們+1 – War10ck 2013-04-26 13:38:35

0

如果您的AJAX代碼在其他所有瀏覽器中都有效,那麼它可能是緩存問題,因爲之前的文件仍然與當前窗口關聯?在IE中清除緩存,關閉瀏覽器,所有活動會話賬戶,然後重新打開並查看。