注册 | 登陆
您的位置:阿里西西 > 前端技术 > 脚本技术 > 详细内容

ajax如何解决火狐浏览器或其它非ie浏览器的兼容性问题

  稿源:本站整理   2018-09-05   点击:   撤稿纠错
这行简单得多的代码在 Mozilla、Firefox、Safari、Opera 以及基本上所有以任何形式或方式支持 Ajax 的非 Microsoft 浏览器中,创建了XMLHttpRequest对象。

阿里西西web开发网为大家整理了这篇ajax如何解决火狐浏览器或其它非ie浏览器的兼容性问题,如果这篇文章在您的工作或学习中有帮助,欢迎常回来看看哦,更多精彩的教程请访问我们的主页,以下是教程浏览:

  如果选择的浏览器不是 Internet Explorer,或者为非 Microsoft 浏览器编写代码,就需要使用不同的代码。事实上就是 清单 1 所示的一行简单代码:

  var xmlHttp = new XMLHttpRequest object;。

  这行简单得多的代码在 Mozilla、Firefox、Safari、Opera 以及基本上所有以任何形式或方式支持 Ajax 的非 Microsoft 浏览器中,创建了XMLHttpRequest对象。

  结合起来

  关键是要支持所有浏览器。谁愿意编写一个只能用于 Internet Explorer 或者非 Microsoft 浏览器的应用程序呢?或者更糟,要编写一个应用程序两次?当然不!因此代码要同时支持 Internet Explorer 和非 Microsoft 浏览器。清单 4 显示了这样的代码。

  清单 4. 以支持多种浏览器的方式创建 XMLHttpRequest 对象

  /* Create a new XMLHttpRequest object to talk to the Web server */

  var xmlHttp = false;

  /*@cc_on @*/

  /*@if (@_jscript_version >= 5)

  try {

  xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");

  } catch (e) {

  try {

  xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");

  } catch (e2) {

  xmlHttp = false;

  }

  }

  @end @*/

  if (!xmlHttp && typeof XMLHttpRequest != 'undefined') {

  xmlHttp = new XMLHttpRequest();

  }

  现在先不管那些注释掉的奇怪符号,如@cc_on,这是特殊的 JavaScript 编译器命令。这段代码的核心分为三步:

  1. 建立一个变量xmlHttp来引用即将创建的XMLHttpRequest对象。

  2. 尝试在 Microsoft 浏览器中创建该对象:

  o 尝试使用Msxml2.XMLHTTP对象创建它。

  o 如果失败,再尝试Microsoft.XMLHTTP对象。

  3. 如果仍然没有建立xmlHttp,则以非 Microsoft 的方式创建该对象。

  最后,xmlHttp应该引用一个有效的XMLHttpRequest对象,无论运行什么样的浏览器。

教程内容到此结束,欢迎您再次访问http://www.alixixi.com,我们致力于提供丰富的web开发教程及资源。

更多关于 ajax 火狐 浏览器 ie浏览器 兼容性 的文章
相关阅读

相关排行总榜

网页教程

网站运营

特效排行

教你如何使用js+CSS写出类似FLASH动画的网
一款CSS3制作的带尖角的按钮实例代码
目前主流浏览器对于HTML5与CSS3的支持情况
全面剖析前端Ajax技术原理及知识
分享一个HTML5 + JavaScript实现Flash动画
用PHOTOSHOP把美女头画像制作成漂亮的仿手
淘宝网及新浪网等几大官方IP查询API接口地
用Photoshop制作淘宝大促双十一电商促销宣
用HTML5+css3制作HTML5验证的网页表单
通过html5代码实现在网页中插入和播放mp4
如何让您的微信公众号内容快速增加阅读量
网站用户界面设计(网页设计)命名规范
分享一些企业微信营销推广的技巧与经验
可以借鉴和学习的小米模式4大经验要素
SEO优化中网站title标题优化总结及经验分
为什么说建站要从网站用户忠诚度着手,知
一个优秀的SEM进行百度搜索推广账号架构经
谈谈从了解用户开始互联网推广的营销策略
谈谈新手运营网站如何做好网站的广告位投
清理您网站上的黑链的几个招数
JS制作循环上下左右平移转圈的图层特效
原生js写的贪食蛇网页版小游戏特效代码,
用CSS3实现的addidas阿迪达斯标志LOGO特效
HTML5打造的酷炫3D 360度图片立体浏览特效
通用canvas代码实现的JS画圆圈动画特效代
通过HTML5+SVG制作奔跑的小马驹动画特效
jquery实现拖拽进度条并显示百分比的特效
用HTML5+canvas代码绘制的星空月亮图案特
简单实用的纯CSS实现的横向多级导航特效代
原生JS写的一个书架式的图片缩放滚动展示