window.ActiveXObject使用說(shuō)明
解:判斷瀏覽器是否支持ActiveX控件,如果瀏覽器支持ActiveX控件可以利用
var xml=new ActiveXObject("Microsoft.XMLHTTP");創(chuàng)建XMLHttpRequest 對(duì)象(這是在IE7以前的版本中);在較新的IE版本中可以利用 var xml=new ActiveXObject("Msxml2.XMLHTTP")的形式創(chuàng)建XMLHttpRequest對(duì)象;而在IE7及非IE瀏覽器中可以利用var xml=new XMLHttpRequest()創(chuàng)建XMLHttpRequest對(duì)象。
創(chuàng)建XMLHttpRequest 對(duì)象,必須考慮到瀏覽器兼容問(wèn)題
創(chuàng)建XMLHTTPRequest對(duì)象
對(duì)了,說(shuō)到區(qū)別,我們這里來(lái)看看怎么來(lái)聲明(使用)它,在使用XMLHTTPRequest對(duì)象發(fā)送請(qǐng)求和處理響應(yīng)之前,我們必須要用javascript創(chuàng)建一個(gè)XMLHTTPRequest對(duì)象。(IE把XMLHTTPRequest實(shí)現(xiàn)為一個(gè)ActiveX對(duì)象,其他的瀏覽器[如Firefox/Safari/Opear]則把它實(shí)現(xiàn)為一個(gè)本地的javascript對(duì)象)。下面我們就來(lái)看看具體怎么運(yùn)用javascript來(lái)創(chuàng)建它吧:
代碼:
<script language="javascript" type="text/javascript">
<!--
var xmlhttp;
// 創(chuàng)建XMLHTTPRequest對(duì)象
function createXMLHTTPRequest(){
if(window.ActiveXObject){ // 判斷是否支持ActiveX控件
xmlhttp = new ActiveObject("Microsoft.XMLHTTP"); // 通過(guò)實(shí)例化ActiveXObject的一個(gè)新實(shí)例來(lái)創(chuàng)建XMLHTTPRequest對(duì)象
}
else if(window.XMLHTTPRequest){ // 判斷是否把XMLHTTPRequest實(shí)現(xiàn)為一個(gè)本地javascript對(duì)象
xmlhttp = new XMLHTTPRequest(); // 創(chuàng)建XMLHTTPRequest的一個(gè)實(shí)例(本地javascript對(duì)象)
}
}
//-->
</script>
js用來(lái)區(qū)別IE與其他瀏覽器及IE6-8之間的方法。
1、document.all
2、!!window.ActiveXObject;
使用方法如下:
if (document.all){
alert(”IE瀏覽器”);
}else{
alert(”非IE瀏覽器”);
}
if (!!window.ActiveXObject){
alert(”IE瀏覽器”);
}else{
alert(”非IE瀏覽器”);
}
下面是區(qū)別IE6、IE7、IE8之間的方法:
var isIE=!!window.ActiveXObject;
var isIE6=isIE&&!window.XMLHttpRequest;
var isIE8=isIE&&!!document.documentMode;
var isIE7=isIE&&!isIE6&&!isIE8;
if (isIE){
if (isIE6){
alert(”ie6″);
}else if (isIE8){
alert(”ie8″);
}else if (isIE7){
alert(”ie7″);
}
}
首先我們確保這個(gè)瀏覽器為IE的情況下,進(jìn)行了在一次的檢測(cè),如果你對(duì)此有懷疑,可以測(cè)試一下。
我這里就直接使用在判斷中了,你也可以將他們先進(jìn)行聲明成變量進(jìn)行使用。據(jù)說(shuō)火狐以后也會(huì)加入document.all這個(gè)方法,所以建議使用第二種方法,應(yīng)該會(huì)安全一些。
相關(guān)文章
JavaScript面試必備之垃圾回收機(jī)制和內(nèi)存泄漏詳解
垃圾回收機(jī)制和內(nèi)存泄漏是JavaScript面試時(shí)常常問(wèn)到的問(wèn)題,這篇文章就為大家詳細(xì)整理了他們的相關(guān)知識(shí),感興趣的小伙伴可以跟隨小編一起了解一下2023-05-05javascript實(shí)現(xiàn)驗(yàn)證IP地址等相關(guān)信息代碼
本文給大家分享的是一組判斷IP地址是否合法,判斷子網(wǎng)掩碼是否合法,驗(yàn)證輸入的網(wǎng)關(guān)地址是否合法的javascript代碼,十分的簡(jiǎn)單實(shí)用,有需要的小伙伴可以參考下。2015-05-05將HTML格式的String轉(zhuǎn)化為HTMLElement的實(shí)現(xiàn)方法
本節(jié)主要介紹了將HTML格式的String轉(zhuǎn)化為HTMLElement的實(shí)現(xiàn)方法,需要的朋友可以參考下2014-08-08js實(shí)現(xiàn)增加數(shù)字顯示的環(huán)形進(jìn)度條效果
本文主要分享了js實(shí)現(xiàn)增加數(shù)字顯示的環(huán)形進(jìn)度條效果的示例代碼。具有一定的參考價(jià)值,下面跟著小編一起來(lái)看下吧2017-02-02基于Bootstrap的UI擴(kuò)展 StyleBootstrap
這篇文章主要為大家詳細(xì)介紹了基于Bootstrap的UI擴(kuò)展: StyleBootstrap,感興趣的小伙伴們可以參考一下2016-06-06可能被忽略的一些JavaScript數(shù)組方法細(xì)節(jié)
這篇文章主要給大家介紹了一些可能被忽略的JavaScript數(shù)組方法細(xì)節(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-02-02如何使用require.context實(shí)現(xiàn)優(yōu)雅的預(yù)加載
這篇文章主要介紹了使用require.context實(shí)現(xiàn)優(yōu)雅的預(yù)加載?,需要的朋友可以參考下2023-05-05