javascript:以前写的xmlhttp池,代码


Posted in Javascript onMay 18, 2008

var Pool_xmlreq=function(){
var _cacheCase=[];
 _cacheCase.fetch=function(){
  var i=0;
  var _instance=function(){
   try{
    return (new ActiveXObject("Msxml2.XMLHTTP.5.0"));}
   catch(e){
    try{
     return (new XMLHttpRequest());}
    catch(e){
     try{
      return (new ActiveXObject("Msxml2.XMLHTTP"));}
     catch(e){
      try{
       return (new ActiveXObject("Microsoft.XMLHTTP"));}
      catch(e){
       alert("Error: initializing xmlhttprequest!");}}}}}
  for(;i<this.length;i++){
   if(this[i].readyState==0||this[i].readyState==4){
    return this[i];}}
  this[i]=_instance();
  return this[i];}
 this.length=function(){
  return _cacheCase.length}
 this.instance=function(){
  return _cacheCase.fetch()}
 this.connect=function(method,url,data,handler){
  var _xmlhttpreq=_cacheCase.fetch();
  with(_xmlhttpreq){
   open(method,url,true);
   setRequestHeader("Cache-Control","no-cache");  
   setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=UTF-8");
   send(data);
   onreadystatechange=function(){
    if(_xmlhttpreq.readyState<4)
     return false;
    if(_xmlhttpreq.status==200||_xmlhttpreq.status==304){
     handler(decodeURIComponent(_xmlhttpreq.responseText));
     return true;}
    alert("Error: status_"+_xmlhttpreq.status+"!");
    return false;}}}
}
var xmlreq=new Pool_xmlreq(); 

用法:
xmlreq.connect("post",url,postdata,function);

Javascript 相关文章推荐
javascript document.execCommand() 常用解析
Dec 14 Javascript
js判断上传文件类型判断FileUpload文件类型代码
May 20 Javascript
JS+CSS实现DIV层的展开、收缩效果
Jan 28 Javascript
深入理解JS addLoadEvent函数
May 20 Javascript
JavaScript_ECMA5数组新特性详解
Jun 12 Javascript
jQuery简单创建节点的方法
Sep 09 Javascript
vue2.0结合Element实现select动态控制input禁用实例
May 12 Javascript
详解基于angular-cli配置代理解决跨域请求问题
Jul 05 Javascript
JavaScript高级函数应用之分时函数实例分析
Aug 03 Javascript
详解vue-cli3 中跨域解决方案
Apr 10 Javascript
详解微信小程序之一键复制到剪切板
Apr 24 Javascript
JavaScript 实现继承的几种方式
Feb 19 Javascript
JavaScript的9个陷阱及评点分析
May 16 #Javascript
认识延迟时间为0的setTimeout
May 16 #Javascript
用函数式编程技术编写优美的 JavaScript_ibm
May 16 #Javascript
Javascript模块模式分析
May 16 #Javascript
Dom加载让图片加载完再执行的脚本代码
May 15 #Javascript
直接生成打开窗口代码,不必下载
May 14 #Javascript
地震发生中逃生十大法则
May 12 #Javascript
You might like
PHP写MySQL数据 实现代码
2009/06/15 PHP
PHP 柱状图实现代码
2009/12/04 PHP
PHP 年龄计算函数(精确到天)
2012/06/07 PHP
基于命令行执行带参数的php脚本并取得参数的方法
2016/01/25 PHP
Zend Framework动作助手Json用法实例分析
2016/03/05 PHP
Laravel模型间关系设置分表的方法示例
2018/04/21 PHP
php二维数组按某个键值排序的实例讲解
2019/02/15 PHP
javascript Firefox与IE 替换节点的方法
2010/02/24 Javascript
使用jQuery+HttpHandler+xml模拟一个三级联动的例子
2011/08/09 Javascript
js/jquery解析json和数组格式的方法详解
2014/01/09 Javascript
javascript中FOREACH数组方法使用示例
2016/03/01 Javascript
JQuery组件基于Bootstrap的DropDownList(完整版)
2016/07/05 Javascript
用原生JS对AJAX做简单封装的实例代码
2016/07/13 Javascript
全面接触神奇的Bootstrap导航条实战篇
2016/08/01 Javascript
js每隔两秒输出数组中的一项(实例)
2017/05/28 Javascript
关于TypeScript模块导入的那些事
2018/06/12 Javascript
什么时候不能在 Node.js 中使用 Lock Files
2019/06/24 Javascript
JavaScript监听键盘事件代码实现
2020/06/03 Javascript
vscode 插件开发 + vue的操作方法
2020/06/05 Javascript
Vue项目如何引入bootstrap、elementUI、echarts
2020/11/26 Vue.js
Vue实现摇一摇功能(兼容ios13.3以上)
2021/01/26 Vue.js
python matplotlib中文显示参数设置解析
2017/12/15 Python
Python实现去除列表中重复元素的方法小结【4种方法】
2018/04/27 Python
Python多继承原理与用法示例
2018/08/23 Python
python五子棋游戏的设计与实现
2019/06/18 Python
python实现雪花飘落效果实例讲解
2019/06/18 Python
python爬虫 基于requests模块发起ajax的get请求实现解析
2019/08/20 Python
Pytorch中.new()的作用详解
2020/02/18 Python
Pycharm新手使用教程(图文详解)
2020/09/17 Python
美国派对用品及装饰品网上商店:Shindigz
2016/07/30 全球购物
舞会礼服和舞会鞋:PromGirl
2019/04/22 全球购物
zooplus意大利:在线宠物商店
2019/08/07 全球购物
领导班子个人对照检查材料(群众路线)
2014/09/26 职场文书
Python合并多张图片成PDF
2021/06/09 Python
python实现简单聊天功能
2021/07/07 Python
vue如何清除浏览器历史栈
2022/05/25 Vue.js