2011-12-01 60 views
1

我有一小部分代碼在頁面內部對頁面進行Ajax處理,並隱藏動態加載頁面中的特定元素。 .load似乎不適用於我更改圖像路徑,所以我選擇使用.ajax。
使用以下代碼,我已成功使用Chrome,FF8和IE9,但未使用IE7或IE8。 Ajax頁面的頂部沒有在IE7和IE8中加載,但在IE9,Chrome和FF8中,整個頁面加載正常。jQuery ajax和IE 7/8 - 不加載整個頁面


<script type="text/javascript"> 
$(document).ready(function(){ 
    $.ajax({ 
    url: '/example/file.htm', 
    dataType: 'html', 
    cache: false, 
    success: function(data) { 
     $('.right-column-body-text #experts_area').append(
     data.replace(/<img([^>]*)\ssrc=['"](?:[^'"\/]*\/)*([^'"]+)['"]/gi, "<img$1 src='../path/images/$2'") 
    ); 
    } 
    }); 
}); 
$(window).load(function(){ 
    setTimeout(function(){ 
    $('.right-column-body-text #loading').fadeOut(500); 
    $('.right-column-body-text #experts_area').fadeIn(1000); 
    },500); 
}); 
</script> 

我嘗試添加錯誤日誌並沒有什麼表現。請讓我知道是否有語法問題。


編輯下面以包括HTML


下面是HTML的一部分,具體到區域阿賈克斯成 -

<div class="right-column-body"> 
    <div class="right-column-body-text" id="right-column-body-text"> 
    <div id="loading"><img alt="loading" src="/coating/images/loading.gif" /></div> 
    <div id="experts_area"> <!-- ajax here --> </div> 
    </div> 
    <div class="right-column-body-right-hand" id="right-column-body-right-hand"> 
    </div> 
</div> 

現在,如果我懂ajax函數,它應該將整個頁面加載到該div容器中,包括頁面的頭部。當我點擊F12並在IE7或IE8中查看HTML時,我查看experts_area div,出現的文本的第一部分距離ajaxed頁面一半處於完全隨機的位置(但會一直持續到HTML)。當我在IE9或其他瀏覽器中查看同樣的東西時,它會包含整個頭部和頁面。這是在查看HTML,所以我不相信這只是一個顯示問題。

+0

如果你編輯了你的文章並添加了你的HTML,這將會有所幫助。 –

+0

也正是哪個部分沒有顯示在哪裏。 –

回答

0

解決。

我在ajaxing的頁面上工作的可怕技術人員沒有在他們的HTML中關閉FIVE標籤。一旦我讓他們修復了他們頁面上的所有錯誤,它就解決了我的問題。

感謝您的患者,本,並且我很抱歉,首先提出這個問題甚至不值得懷疑。這種愚蠢的東西太多的頭痛。