ajax兼容各种浏览器


AJAX 的要点是 XMLHttpRequest 对象。

不同的浏览器创建 XMLHttpRequest 对象的方法是有差异的。

IE 浏览器使用 ActiveXObject,而其他的浏览器使用名为 XMLHttpRequest 的 JavaScript 内建对象。

如需针对不同的浏览器来创建此对象,我们要使用一条 "try and catch" 语句。

让我们用这段创建 XMLHttpRequest 对象的 JavaScript 来更新一下我们的 "testAjax.htm" 文件:

[html]  view plain copy
  1. <html xmlns="http://www.w3.org/1999/xhtml">  
  2. <head runat="server">  
  3.     <title></title>  
  4.     <script type="text/javascript">  
  5.         function ajaxFunction() {  
  6.             var xmlHttp = false;  
  7.             try {  
  8.                 xmlHttp = new ActiveXObject("Msxml2.XMLHTTP"); // ie msxml3.0+(IE7.0及以上)  
  9.             } catch (e) {  
  10.                 try {  
  11.                     xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); //ie msxml2.6(IE5/6)  
  12.                 } catch (e2) {  
  13.                     xmlHttp = false;  
  14.                 }  
  15.             }  
  16.             if (!xmlHttp && typeof XMLHttpRequest != 'undefined') {// Firefox, Opera 8.0+, Safari  
  17.                 xmlHttp = new XMLHttpRequest();  
  18.             }  
  19.             return xmlHttp;  
  20.         }  
  21.     </script>  
  22. </head>  
  23. <body>  
  24.     <form name="myForm" action="" method="post">  
  25.         用户: <input type="text" name="username" />  
  26.         时间: <input type="text" name="time" />  
  27.     </form>  
  28. </body>  
  29. </html  

注释:上面这些浏览器定制的代码很长,也很复杂。不过,每当您希望创建 XMLHttpRequest 对象时,这些代码就能派上用场,因此您可以在任何需要使用的时间拷贝粘贴这些代码。上面这些代码兼容所有的主流浏览器:Internet Explorer、Opera、Firefox 以及 Safari。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值