什么是ajax?

Ajax(Asynchronous [JavaScript] and XML),直譯為“異步的JavaScript與[XML技術(shù)],是一種創(chuàng)建交互式網(wǎng)頁應(yīng)用的網(wǎng)頁開發(fā)技術(shù),用于創(chuàng)建快速動態(tài)網(wǎng)頁,由杰西·詹姆士·賈瑞特所提出。與傳統(tǒng)的Web應(yīng)用相比,Ajax通過瀏覽器與服務(wù)器進行少量的數(shù)據(jù)交換就可以實現(xiàn)網(wǎng)頁的異步更新,在不重新加載整個網(wǎng)頁的情況下,即可對網(wǎng)頁進行更新。
Ajax可使[因特網(wǎng)應(yīng)用]程序更小、更快,更友好。

Ajax 是一種獨立于 Web [服務(wù)器軟件的瀏覽器技術(shù)?!jax 基于下列 Web 標準:

JavaScript、XML、HTML與CSS在 Ajax 中使用的 Web 標準已被良好定義,并被所有的主流瀏覽器支持。Ajax 應(yīng)用程序獨立于瀏覽器和平臺。
Web 應(yīng)用程序較[桌面應(yīng)用程序]有諸多優(yōu)勢;它們能夠涉及廣大的用戶,它們更易安裝及維護,也更易開發(fā)。
那么怎樣封裝一個ajax來方便我們調(diào)用呢?

function ajax(opt) {
   var default_opt = {
    url: '',
    method: 'GET',
    async: true,
    data: {},
    callback: null
}
//拼接
var newopt = Object.assign(default_opt, opt);
//兼容 實例化
var xhr = window.XMLHttpRequest ? 
new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP');
//監(jiān)聽狀態(tài)
xhr.onreadystatechange = function () {
    if (xhr.readyState === 4 && xhr.status === 200) {
        // console.log(xhr.responseText);
        newopt.callback && newopt.callback(xhr.responseText);
    }
}
var search = '';
if (newopt.method.toUpperCase() === 'GET') {
    console.log(Object.keys(newopt.data))
    search = '?' + Object.keys(newopt.data).map(function (item) {
        return item + '=' + newopt.data[item];
    }).join('&');
}
xhr.open(newopt.method, newopt.url + search, newopt.async);
var data = null;
if (newopt.method.toUpperCase() === 'POST') {
    xhr.setRequestHeader('Content-Type',
'application/x-www-form-urlencoded');
    data = JSON.stringify(newopt.data);
}
xhr.send(data);

}

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前言 學妹這學期新開了一門課《Script及AJAX開發(fā)技術(shù)》,然而臨近學期末,她突然跑來問我:到底什么是AJAX...
    雇個城管打天下閱讀 1,100評論 0 1
  • 大家好,我是IT修真院鄭州分院王姣妍,一枚正直、純潔、善良的web程序員。 今天給大家分享一下,修真院官網(wǎng) js任...
    初晨曬暖心閱讀 513評論 0 1
  • 大家好,我是IT修真院北京分院第31期的學員,一枚正直純潔善良的JAVA程序員。今天給大家分享一下,修真...
    ve追風_685b閱讀 353評論 1 0
  • 什么是Ajax 目錄 1.背景介紹 2.知識剖析 3.常見問題 4.解決方案 5.編碼實戰(zhàn) 6.擴展思考 7.參考...
    冷眸_c6b8閱讀 327評論 0 0
  • 大家好,我是IT修真院成都分院第7期的學員韓建名,一枚正直純潔善良的WEB前端程序員。 目錄 1.背景介紹 2.知...
    inh_閱讀 462評論 0 0

友情鏈接更多精彩內(nèi)容