Ajax判断浏览器的方法总结
首先把代码给大家,下面是解释
/**
* 获得XMLHttpRequest对象
*/
function createXHR(){
var x=[function(){return new ActiveXObject("Msxm12.XMLHTTP");},function(){return xmhttp=new ActiveXObject("Microsoft.XMLHTTP");},
function(){return new XMLHttpRequest();}];
for (var i=0; i<x.length; i++) {
try {
return (x[i])();
} catch (e) {
}
};
}
方法一:
//创建一个布尔型变量,用来检查是否为合法的IE实例
var xmlreq = false;
//检查是否使用的是IE
try {
//如果JavaScript的版本大于5
xmlreq = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e1) {
// 如果不是,则使用老版本的ActiveX对象来检查
try {
//如果使用的是IE浏览器
xmlreq = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e2) {
// 否则肯定使用的是非IE浏览器
xmlreq=false;
}
}
}
//如果使用的是非IE浏览器,则创建一个该对象的JavaSript实例
if(!xmlreq && typeof XMLHttpRequest!='undefined'){
xmlreq=new XMLHttpRequest();
}
方法二:
//创建一个布尔型变量,用来检查是否为合法的IE实例
var xmlreq = false;
//如果ActiveX对象可用,则使用的肯定是IE
if (window.ActiveXObject) {
xmlreq = new ActiveXObject("Microsoft.XMLHTTP");
} else {
// 否则肯定使用JavaSript处理方法
xmlreq=new XMLHttpRequest();
}
方法三:
//创建一个布尔型变量,用来检查是否为合法的IE实例
var xmlreq = false;
//
if (window.XMLHttpRequest) {
// 如果使用的是非IE浏览器,则创建一个该对象的JavaSript实例
xmlreq = new XMLHttpRequest();
} else if (window.ActiveXObject) {
// Create XMLHttpRequest via MS ActiveX
try {
// 如果JavaScript的版本大于5
xmlreq = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e1) {
相关文档:
最近网上提的很多的一个新概念就是 AJAX 了, 那么, AJAX 是什么呢? 以下内容引用网上资料:
AJAX全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。它有机地包含了以下几种技术:
Ajax(Asynchronous JavaScript + XML)的定义
基于 web标准(sta ......
Ajax------很多程序员都喜欢玩这个东西,觉得很是高深莫测,而且越是痛苦越钟爱,我发现这是程序员的通病,好像不折磨自己不足以享受这么美好的生活,Ajax很火,确实很火,火到什么程度我已经不大清楚,在当时我学程序的那个年代它甚至超过spring,struts等等主流的框架,天哪微软和SUN都很担心,但是时间证明Ajax仅仅只是个这些程序员 ......
在
vs2008为asp.net ajax添加js智能感知
今天找了好久,终于搞清楚了,scriptManager控件支持js智能感知,而从其继承的toolkitScriptManager不支持。至少在
vs2008b2中是这样。
要在js文件中添加asp.net ajax的js智能感知(与scriptManager控件无关),在js文件的开头添加这样一行即可:
//
/<referen ......
在一个小型项目中,我使用了Ajax Extensions中的UpdatePanel控件,在本地调试运行时好的,可以看到ajax的异步刷新效果,但是当发布到安装了.net framework 3.5 sp1的server 2003上去之后,发现ajax效果没有了,也就是说本来的异步提交变成了非Ajax方式的POST,而且没有报告任何错误。
对比开发时和运行 ......
ajax.open方法中,第3个参数是设同步或者异步。prototype等js类库一般都默认为异步,即设为true。
先说下同步的
情况下,js会等待请求返回,获取status。不需要onreadystatechange事件处理函数。
而异步则需要
onreadystatechange事件处理,且值为4再正确处理下面的内容
......