原生ajax相容問題

2021-10-11 09:29:39 字數 899 閱讀 9018

一、原生ajax相容低版本ie6的寫法

相容老版本瀏覽器ie6建立物件的寫法: new activexobject(『xmlhttp』)引數是字串形式

一般情況都不再做ie6的相容了,太古老

一切物件都是window的成員

if(window.xmlhttprequest) else
二、onload事件不相容ie9以下

一般瀏覽器都支援onload事件

但有的onload事件僅支援ie9及以上版本的瀏覽器,ie6、ie7、ie8不相容,則需要使用另外乙個事件onreadystatechange來相容低版本的瀏覽器,onreadystatechange需要配合readystate使用(readystate狀態)寫法如下:

xhr.onreadystatechange = function()

}

原生ajax的readystate有5個狀態,分別數字 0 、 1 、2、3、4表示。

如果狀態是4,代表整個請求響應結束,此時可以獲取響應結果了。

三、原生ajax設定get請求型別,在ie下有快取

如果原生ajax用的get請求,那麼在ie瀏覽器下會自動將第一次請求的url進行快取(也就是將url儲存起來了),下次再去請求這個url的時候,直接從快取中獲取(不會再次請求伺服器)

問題:由於請求的url一直沒變,所以一直獲取的本地快取中的資料

解決辦法:

1、修改url引數, 在url位址後新增時間戳(new date())或者 隨機字串

2、jquery中的ajax中cache(布林值)預設true,設定false不快取

實用的原生js相容問題

新增事件方法 addhandler function element,type,handler else if element.attachevent else 移除之前新增的事件方法 removehandler function element,type,handler else if eleme...

div css(Firefox hr 相容問題)

firefox hr 相容問題,在ie中正常顯示的hr屬性設定,在firefox裡面不管怎麼弄都是不出來,最後看到一篇文章說ff中必須設定背景顏色才有效果的,這種問題自己閉門造車的話整上個三天三夜都找不到解決辦法啊!把 貼出來分享下 hr imghrcontent 通常我們都會定義 hr 的顯示外觀...

object c c 相容問題

今天在把在另乙個工程的object c 的類移植過來,原來沒問題的類,竟然在類宣告的地方出現編譯異常 remoteplayer.h 55 error expected asm or attribute before remoteplayer 以為是編譯器的設定有問題,折騰了半天才發現,原來是乙個小問...