`
顽石OK07
  • 浏览: 83867 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

Defined XmlHttp Object for both IE and FireFox

阅读更多

导读:
  使用JS调用xmlHttp读取远端文件,
  实现不刷新网页更新内容,
  如果用户浏览器是IE的话,我们习惯使用下面的方式:

  var xmlDom = new ActiveXObject("Microsoft.XMLHTTP"); 
  var strData = "code=123"; 
  xmlDom.open("POST", "default.asp",false); 
  xmlDom.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 
  xmlDom.send(strData); 

 


  但,如果客户端是FireFox,这段代码就不能使用了
  因为FireFox不支持:ActiveXObject
  在FireFox中,必须使用下面的方式才行:
  new XMLHttpRequest()
  其实针对IE,有人也会使用:
  new ActiveXObject("Msxml2.XMLHTTP")
  不过这就要看客户端浏览器支持的xmlHttp是什么版本了。
  所以为了让大多数浏览器都可以使用,
  一般的想法是现判断浏览器的种类,然后建立相应的对象,
  不过查看Google的源码,
  他用了更巧妙的 try/catch 方法: 
     

function jb() { 
  var A=false; 
  try { 
  A=new ActiveXObject("Msxml2.XMLHTTP"); 
  } 
  catch(e) { 
  try { 
  A=new ActiveXObject("Microsoft.XMLHTTP"); 
  } 
  catch(oc) { 
  A=false; 
  } 
  } 
  if ( !A &&typeof XMLHttpRequest != "undefined" ) { 
  A=new XMLHttpRequest(); 
  } 
  return A; 
  } 

 

  

 

  这样,在使用时,只要这样调用就可以了:
  

    var xmlDom = jb(); 
  var strData = "code=123"; 
  xmlDom.open("POST", "default.asp", false); 
  xmlDom.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 
  xmlDom.send(strData); 

 

 

 

  [Last Modified By todd, at 2005-07-20 13:08:48]
  Comments Feed:http://www.todd-lee.com/blog/feed.asp?q=comment&id=63

本文转自
http://www.todd-lee.com/blog/article.asp?id=63

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/abigfrog/archive/2007/10/19/1831956.aspx

 

 

 

分享到:
评论

相关推荐

    event兼容调用(IE,Firefox,Chrome)

    ### event兼容调用详解——IE,Firefox,Chrome 在跨浏览器开发中,处理事件(event)的兼容性问题是一项常见的挑战。不同的浏览器对事件模型的支持程度不同,这导致了开发者在编写JavaScript代码时需要考虑多种...

    RF and Digital Signal Processing for Software-Defined Radio

    RF and Digital Signal Processing for Software-Defined Radio: A Multi-Standard Multi-Mode Approach by Tony J. Rouphael RF and Digital Signal Processing for Software-Defined Radio: A Multi-...

    jsp\No result defined for action and result input.doc

    ### Struts2框架中“No result defined for action and result input”错误解析及解决方法 #### 错误概述 在Struts2框架中开发Web应用程序时,可能会遇到一个名为“No result defined for action and result input...

    非ie内核浏览器ACTIVEX插件+火狐谷歌支持OBJECT

    然而,随着浏览器技术的发展,尤其是非IE内核浏览器如Firefox、Chrome的普及,ActiveX插件逐渐失去了其主导地位,因为它们不兼容这些现代浏览器。然而,在某些特定场景下,比如企业内部系统或特定的网络应用,仍然...

    clipboard复制文本或者隐藏域到剪切板,兼容ie.chrome.firefox

    针对这个问题,`clipboard.js`应运而生,它提供了一种优雅且兼容多浏览器的方式来实现文本复制功能,包括IE、Chrome和Firefox等主流浏览器。 `clipboard.js`是一个轻量级的库,它的主要作用是简化了浏览器的剪贴板...

    RF and Digital Signal Processing for Software Defined Radio

    to present signal processing principles used in the software defined radio, ranging from analog ,digital modulation to RF, DSP and data conversion.

    ajax精简框架1.2

    Firefox, google, the object encapsulates the ajax Compact Framework, can be directly used in embedded projects Description: For more on the extended period for repair ajax upload some bug, add user-...

    Value too large for defined data type 解决办法

    ### "Value too large for defined data type" 解决办法 在Linux环境下进行文件操作时,可能会遇到一个名为“Value too large for defined data type”的错误。这一问题通常发生在使用`ls`或`find`命令来查看大于2...

    wdatePicker 解决火狐和IE兼容

    标题“wdatePicker 解决火狐和IE兼容”指出,这是一个关于JavaScript日期选择插件wdatePicker的讨论,特别是针对其在不同浏览器,尤其是火狐(Firefox)和Internet Explorer(IE)之间的兼容性问题。wdatePicker是一...

    No result defined for action.doc

    在IT领域,尤其是在Web开发中,遇到“No result defined for action”这类错误是常见的问题,尤其当使用Struts2框架时更为突出。此类错误通常指向在控制器(Action)中未正确配置或实现结果集(Result),导致请求...

    js兼容性的16个小问题

    本文将深入探讨在Internet Explorer(IE)和Firefox中遇到的16个JavaScript兼容性问题及其解决方案。 1. **document.form.item 问题**: - 在IE中,你可以通过`document.formName.item("itemName")`来访问表单元素...

    Software Defined Radio using MATLAB Simulink and the RTL-SDR

    软件无线电是一种无线通信技术,它采用了软件定义的方式对无线电信号的处理和传输进行管理。与传统的硬件定义无线电不同,软件无线电通过软件实现大部分的调制解调功能,从而提供更大的灵活性和更方便的更新升级方式...

    Models for Probability and Statistical Inference

    Further areas of exploration include: distributions defined in terms of the multivariate normal, chi-square, t, and F (central and non-central); the one- and two-sample Wilcoxon test, together with ...

    Software_Defined_Radio_using_MATLAB_Simulink_and_the_RTL-SDR

    简而言之,本书《Software Defined Radio using MATLAB Simulink and the RTL-SDR》是一本结合了理论与实践的指南,旨在帮助读者通过MATLAB和Simulink软件以及RTL-SDR硬件,掌握软件定义无线电的基本知识和技术应用...

    R for Everyone: Advanced Analytics and Graphics

    R for Everyone: Advanced Analytics and Graphics (Addison-Wesley Data & Analytics Series) by Jared P. Lander English | 14 Jun. 2017 | ASIN: B071X9KT1D | 560 Pages | AZW3 | 58.72 MB Statistical ...

    Software Defined Radio Architectures, Systems and Functions

    软件定义无线电(Software Defined Radio,简称SDR)作为一种先进的无线通信技术,近年来受到了广泛的关注。本文将根据提供的书籍信息,深入探讨软件定义无线电的基本概念、架构、系统及功能,并结合具体实例进行...

    RF and Digital Signal Processing for Sofrware-Defined Radio

    中文译名《软件无线电中的射频与数字信号处理》,不可多得的一部实用的软件无线电著作,可以当作手册,供工程人员参考借鉴。

    Software_Defined_Radio_using_MATLAB_Simulink_and_the_RTL-SDR第三章中文翻译版

    ### Software_Defined_Radio_using_MATLAB_Simulink_and_the_RTL-SDR 第三章中文翻译版 #### 无线电频谱观察 无线电频谱作为电磁频谱的一部分,其覆盖范围从3kHz到300GHz,对于现代社会的通信至关重要。这部分频谱...

Global site tag (gtag.js) - Google Analytics