打印本文 打印本文 关闭窗口 关闭窗口
adapter和facade模式在Ajax中的应用
作者:武汉SEO闵涛  文章来源:敏韬网  点击数4528  更新时间:2009/4/23 11:30:46  文章录入:mintao  责任编辑:mintao
        {

            var httpStatus=req.status;

            if (httpStatus==200 || httpStatus==0)

            {

                this.onload.call(this);

            }

            else

            {

                this.onerror.call(this);

            }

        }

    },

 

    defaultError:function()//default error handler

    {

        alert("error fetching data!"

        +"\n\nreadyState:"+this.req.readyState

        +"\nstatus: "+this.req.status

        +"\nheaders: "+this.req.getAllResponseHeaders());

    }

};

 

怎么样,看到了吗?没有?那好,让我来解释一下这段代码如何应用Adapter和Facade模式的。当然,这里并不分析具体代码的含义了。

1、          Adapter模式

在Ajax应用中经常用到的XHR(xmlHttpRequest)对象,就是需要Adapter模式的一个很好的例子。

XHR对象非W3C标准,所以,尽管现有的较新的浏览器都支持XHR对象,但其具体实现是不一致的。在微软的IE里,XHR是以“ActiveXObject”的样式实现的。而在mozilla浏览器里,其又以一种build-in对象的形式实现。天知道在其他的什么浏览器或者日后的日子里,这种实现方式会不会发生变化。

而对于我们常用的应用程序来说,我们并不关心这些所有的细节。我们所需要知道的,就是当我们希望创建一个XHR对象时,有一个XHR对象会被创建,并且供我们使用。至于究竟如何创建,我们对它并不关心。所以,你可以看到,在上面的代码里,我们是通过在ContentLoader类的loadXMLDoc的方法中实现的。

if (window.XMLHttpRequest)

上一页  [1] [2] [3] [4] [5] [6]  下一页

打印本文 打印本文 关闭窗口 关闭窗口