实例如下:
/* 封装ajax函数 * @param {string}opt.type http连接的方式,包括POST和GET两种方式 * @param {string}opt.url 发送请求的url * @param {boolean}opt.async 是否为异步请求,true为异步的,false为同步的 * @param {object}opt.data 发送的参数,格式为对象类型 * @param {function}opt.success ajax发送并接收成功调用的回调函数 */ function ajax(opt) { opt = opt || {}; opt.method = opt.method.toUpperCase() || 'POST'; opt.url = opt.url || ''; opt.async = opt.async || true; opt.data = opt.data || null; opt.success = opt.success || function () {}; opt.dataType = opt.dataType || "json"; var xmlHttp = null; if (XMLHttpRequest) { xmlHttp = new XMLHttpRequest(); } else { xmlHttp = new ActiveXObject('Microsoft.XMLHTTP'); }var params = []; for (var key in opt.data){ params.push(key + '=' + opt.data[key]); } var postData = params.join('&'); if (opt.method.toUpperCase() === 'POST') { xmlHttp.open(opt.method, opt.url, opt.async); xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;charset=utf-8'); xmlHttp.send(postData); } else if (opt.method.toUpperCase() === 'GET') { xmlHttp.open(opt.method, opt.url + '?' + postData, opt.async); xmlHttp.send(null); } xmlHttp.onreadystatechange = function () { if(opt.dataType != 'jsonp'){ if (xmlHttp.readyState == 4 && xmlHttp.status == 200) { opt.success(xmlHttp.responseText); } }else{ //alert(1); if (xmlHttp.readyState == 4 && xmlHttp.status == 200) { var oScript = document.createElement('script'); document.body.appendChild(oScript); var callbackname = 'wangxiao' oScript.src = opt.url + "?" + postData+'&callback='+callbackname; window['wangxiao'] = function(data) { opt.success(data); document.body.removeChild(oScript); }; } } }; } export default ajax;
以上这篇使用原生js封装的ajax实例(兼容jsonp)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。
本文向大家介绍用原生JS对AJAX做简单封装的实例代码,包括了用原生JS对AJAX做简单封装的实例代码的使用技巧和注意事项,需要的朋友参考一下 首先,我们需要xhr对象。这对我们来说不难,封装成一个函数。 然后,我们来写核心函数。 最后,说明一下此函数的用法。 以上这篇用原生JS对AJAX做简单封装的实例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。
本文向大家介绍原生js实现对Ajax的封装(仿jquery),包括了原生js实现对Ajax的封装(仿jquery)的使用技巧和注意事项,需要的朋友参考一下 前言 众所周知,jquery在我们日常开发中的使用频率非常高,与js相比,我们省去了冗长的获取元素的代码,不用考虑一些麻烦的兼容问题,更加方便的动画实现,以及更加方便的方法调用让我们觉得jquery真是越用越舒服。但是jquery说到底还是对j
本文向大家介绍js原生Ajax的封装和原理详解,包括了js原生Ajax的封装和原理详解的使用技巧和注意事项,需要的朋友参考一下 原理及概念 AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是一种用于创建快速动态网页的技术。 动态网页:是指可以通过服务器语言结合数据库随时修改数据的网页。 静态网页,随着html代码的生成,页面的内容和
本文向大家介绍原生AJAX封装的简单实现,包括了原生AJAX封装的简单实现的使用技巧和注意事项,需要的朋友参考一下 回归下原生js,网上看到的AJAX封装,遂拿来改改,不知还有何弊端,望指出! 假设一个需求,后端要求传入两个数字n1、n2,然后返回总和。 当其中一个参数为空或者不是数字时,返回:{"status":"0", "msg":"参数有误!"} 当正确的时候,返回:{"status":"1
本文向大家介绍基于原生js淡入淡出函数封装(兼容IE),包括了基于原生js淡入淡出函数封装(兼容IE)的使用技巧和注意事项,需要的朋友参考一下 在开发的过程中,我们要做淡入淡出效果的话,我们完全可以使用jQuery的fadeTo()方法。但是我们的目的不只是会用,而是理解程序底层的逻辑。这篇文章主要就是利用原生的javascript实现淡入淡出的效果。 构建框架,基本没难度。 编写javascri
本文向大家介绍原生JS封装Ajax插件(同域、jsonp跨域),包括了原生JS封装Ajax插件(同域、jsonp跨域)的使用技巧和注意事项,需要的朋友参考一下 抛出一个问题,其实所谓的熟悉原生JS,怎样的程度才是熟悉呢? 最近都在做原生JS熟悉的练习。。。 用原生Js封装了一个Ajax插件,引入一般的项目,传传数据,感觉还是可行的。。。简单说说思路,如有不正确的地方,还望指正^_^ 一、Ajax核
本文向大家介绍原生javascript实现的ajax异步封装功能示例,包括了原生javascript实现的ajax异步封装功能示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了原生javascript实现的ajax异步封装功能。分享给大家供大家参考,具体如下: 更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript中ajax操作技巧总结》、《JavaScr
本文向大家介绍使用Require.js封装原生js轮播图的实现代码,包括了使用Require.js封装原生js轮播图的实现代码的使用技巧和注意事项,需要的朋友参考一下 index.html页面: get.js代码如下: init.js代码如下 slider.js代码如下 StartMove.js代码如下 以上所述是小编给大家介绍的使用Require.js封装原生js轮播图,希望对大家有所帮助,如果