zoukankan      html  css  js  c++  java
  • Js异步编程与Ajax

         ajax, asynchronous javascript +xml,这项技术能够向服务器请求额外的数据而不用卸载页面。核心是 xmlhttprequest(xhr)对象,xhr为向服务器发送请求和解析服务器相应提供了接口,也就是说你点击了按钮,解析服务器返回的报文,不用刷新页面就能利用dom将新数据插到页面中。

         ie5是第一个引用xhr对象的浏览器,但是他是通过MSXML库中的一个ActiveX对象实现的,因此要使用他

    //适用于ie7之前的版本

    function createXHR()

    {

       if(typeof arguments.callee.activeXString !="string")

       {

                 var versions=[ "MSXML2.XMLHttp.6.0","MSXML2.XMLHttp.3.0","MSXML2.XMLHttp"],i,len;

                 for(i=0,len=versions.length;i<len;i++)

         {

                         try

                              {

                                new ActiveXOjbect(versions[i]);

                                break;

             }

                           catch(ex)

                          {}

                   }

        }

          return  new ActiveXObject(arguments.callee.activeXString);

    }

    ie7+ firefox opera chrome safari都支持原生的xhr对象,所以直接下面写:

    var xhr=new XmlHttpRequest();综合:

    function createXHR()

    {

    if(typeof XmlHttpRequest!="undefined")

    {return  new XmlHttpRequest();}

    else if( typeof ActiveXObject !="undefined")

    {

       if(typeof arguments.callee.activeXString !="string")

       {

                 var versions=[ "MSXML2.XMLHttp.6.0","MSXML2.XMLHttp.3.0","MSXML2.XMLHttp"],i,len;

                 for(i=0,len=versions.length;i<len;i++)

         {

                         try

                              {

                                new ActiveXOjbect(versions[i]);

                                break;

             }

                           catch(ex)

                          {}

                   }

        }

          return  new ActiveXObject(arguments.callee.activeXString);

      }

    else

    { throw new Error("No xhr available");}

    }

  • 相关阅读:
    Linux部署web项目
    bash: mysql: command not found(解决方法)
    mysql登录遇到ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
    mysqld:未被识别的服务(解决方法)
    Xshell4连接,Linux系统中文显示乱码解决办法
    F5双机冗余配置
    H3C S10512虚拟化配置
    cisco3900板卡sm-es3g-24-p使用方法
    详解Cisco ACS AAA认证-1(转)
    cisco路由器license的相关命令简单梳理(转)
  • 原文地址:https://www.cnblogs.com/renpeng/p/5024699.html
Copyright © 2011-2022 走看看