js封裝ajax(js工具庫)

2022-08-23 22:06:11 字數 2143 閱讀 4064

function sendajax(options)

//如果**能走到這裡,傳了位址

//判斷型別

if(object.prototype.tostring.call(options.url) !== '

[object string]')

//處理請求方式

//沒有傳,預設是get

if(!options.method)

//如果**能走到這裡,說明傳入了

//判斷是否是get或post

if(options.method.tolowercase()!=="

get" && options.method.tolowercase()!=="

post")

//處理資料

if(!options.data)

else

data =options.data;

}else

if(object.prototype.tostring.call(options.data)==='

[object object]

') 轉為

//'username=張三&password=123456&tel=12345678910'

var f = ''

;

for(var attr in

options.data)

}//**走到這裡,data都是乙個字串,是資料

//請求方式是否為get

if(options.method==="

get"

) }

//處理是否非同步的async

if(options.async===undefined)

//**走到這裡,說明async傳入了

//判斷型別是否是布林值

if(object.prototype.tostring.call(options.async) !== '

[object boolean]')

//處理想要的資料格式 datatype

//判斷是否傳入

if(!options.datatype)

//如果能走到這裡,傳入了,就判斷是否為 string或json

if(options.datatype.tolowercase() !== '

string

' && options.datatype.tolowercase() !== '

json')

//處理成功時要執行的**函式

//判斷是否傳入

if(!options.success)

}//如果傳入了,判斷是否是乙個函式

if(object.prototype.tostring.call(options.success) !== '

[object function]')

//處理錯誤是執行的函式

if(!options.error)

}//如果傳入了,判斷是否是乙個函式

if(object.prototype.tostring.call(options.error) !== '

[object function]')

//到這裡所有引數處理完畢 - 開始ajax

//ajax物件的相容寫法

varxhr;

trycatch

(e)catch

(err)

}//開啟

xhr.open(options.method,options.url,options.async

);

//監聽

xhr.onreadystatechange =function()

//呼叫成功想執行的函式

options.success(res);

}else}}

//傳送

if(options.method==="

post")

xhr.send();}/*

********************** 這是請求示例 *************************

*//*

sendajax(,

datatype:"json",

async:true,

data:

});*/

封裝乙個js工具cookie封裝(js工具庫)

setcookie 設定cookie的函式 param key 設定的cookie的鍵 param value 設定的cookie的值 param seconds 設定cookie在多少秒之後失效 單位 秒 param path 設定cookie的路徑 預設是 根目錄 function setcoo...

自己封裝的js工具

1 封裝函式insertafter 功能類似insertbefore 23 var div document.getelementsbytagname div 0 4var span document.createelement span 5var a document.getelementsbyt...

JS工具庫封裝 Video轉換成Canvas

另一種便是使用canvas來替代video。看起來,canvas像是完美的,沒有瀏覽器廠商任性的植入屬性,任由開發者打扮。但是經我們測試後,其實有些低端的android手機可能會出現卡頓和動畫變糊的情況。如果不考慮一些低端手機,還是很值得實踐的。為了方便日常開發使用,特意稍微封裝了一下video轉c...