AJAX浏览器支持

并非所有的浏览器都支持AJAX,以下是支持AJAX的主要浏览器:

 

•Mozilla Firefox 1.0及更高版本。

 

•Netscape 7.1及更高版本。

 

•Apple Safari 1.2及更高版本。

 

•Microsoft Internet Explorer 5及更高版本。

 

•Konqueror。

 

•Opera 7.6及更高版本。

 

•国产主流的浏览器。

 

编写下一个应用程序时,最好要考虑不支持AJAX的浏览器时如何处理。

 

注-当浏览器不支持AJAX时,它只是意味着浏览器不支持创建Javascript XMLHttpRequest对象。

 

 

编写浏览器特定代码

 

使源代码与浏览器兼容的最简单方法是在JavaScript中使用try ... catch块。

 

<html>
   <body>
      <script language = "javascript" type = "text/javascript">
         <!-- 
         //Browser Support Code
         function ajaxFunction() {
            var ajaxRequest;  // The variable that makes Ajax possible!

            try {
               // Opera 8.0+, Firefox, Safari 
               ajaxRequest = new XMLHttpRequest();
            } catch (e) {

               // Internet Explorer Browsers
               try {
                  ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
               } catch (e) {

                  try {
                     ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
                  } catch (e) {

                     // Something went wrong
                     alert("Your browser broke!");
                     return false;
                  }
               }
            }
         }
         //-->
      </script>

      <form name = 'myForm'>
         Name: <input type = 'text' name = 'username' /> <br />
         Time: <input type = 'text' name = 'time' />
      </form>

   </body>
</html>

 

在上面的JavaScript代码中,我们尝试三次来创建XMLHttpRequest对象。第一次尝试:

 

ajaxRequest = new XMLHttpRequest();

 

它适用于Opera 8.0 +,Firefox和Safari浏览器。如果失败,再尝试两次为Internet Explorer浏览器创建正确的对象

 

ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");

 

如果它不起作用,那么这里一个非常过时的浏览器,它不支持XMLHttpRequest,这也意味着它不支持AJAX。

 

但最最有可能的是,变量ajaxRequest现在将被设置为浏览器使用任何XMLHttpRequest标准,我们可以开始向服务器发送数据。具体的AJAX工作流程将在下一章中介绍。

 

上一篇:前端学习(2857):简单秒杀系统学习之发送ajax请求之get


下一篇:前端学习(2858):简单秒杀系统学习之发送ajax请求之post