今天下午在做要素頁(yè)面無(wú)刷新添加的時(shí)候,IE下遭遇Ajax緩存戲弄,因?yàn)閯傞_(kāi)始并不知道IE有這個(gè)壞毛病,折騰了我一下午,終于解決問(wèn)題。郁悶之余,總結(jié)一下解決辦法:
在IE下用Ajax請(qǐng)求某一頁(yè)面,通常會(huì)因?yàn)榫彺娴脑蚨祷厣弦淮蔚慕Y(jié)果,造成混亂,而FF下不會(huì)出現(xiàn)這種情況。為了不受緩存影響,可以這樣做:
IE訪(fǎng)問(wèn)策略:Internet選項(xiàng)--瀏覽歷史記錄--設(shè)置-- Internet 臨時(shí)文件的選項(xiàng)改為每次訪(fǎng)問(wèn)網(wǎng)頁(yè)時(shí)也可以
1: 在AJAX請(qǐng)求的頁(yè)面后加個(gè)隨機(jī)函數(shù),我們可以使用隨機(jī)時(shí)間函數(shù)
在javascript發(fā)送的URL后加上t=Math.random()
例如這樣:URL+"&"+"t="+Math.random();或者new Date();
2: 在XMLHttpRequest發(fā)送請(qǐng)求之前加上XMLHttpRequest.setRequestHeader("If-Modified-Since","0")
一般情況下,這里的XMLHttpRequest不會(huì)直接使用
你應(yīng)該可以找到這樣的代碼
XXXXX.send(YYYYYY);
那么,就把它變成
XXXXX.setRequestHeader("If-Modified-Since","0");
XXXXX.send(YYYYYY);
實(shí)踐證明,兩種方法都非常有效。
posted on 2010-08-26 15:17
ゞ沉默是金ゞ 閱讀(2057)
評(píng)論(1) 編輯 收藏 所屬分類(lèi):
HTTP