AJAX – 瀏覽器支援

來源:互聯網
上載者:User
文章目錄
  • 例子解釋:

AJAX 的要點是 XMLHttpRequest 對象。

不同的瀏覽器建立 XMLHttpRequest 對象的方法是有差異的。

IE 瀏覽器使用 ActiveXObject,而其他的瀏覽器使用名為 XMLHttpRequest 的 JavaScript 內建對象。

如需針對不同的瀏覽器來建立此對象,我們要使用一條 "try and catch" 語句。您可以在我們的 JavaScript 教程中閱讀更多有關 try 和 catch 語句 的內容。

讓我們用這段建立 XMLHttpRequest 對象的 JavaScript 來更新一下我們的 "testAjax.htm" 檔案:

<html><body><script type="text/javascript">function ajaxFunction() { var xmlHttp;  try    {   // Firefox, Opera 8.0+, Safari    xmlHttp=new XMLHttpRequest();    } catch (e)    {  // Internet Explorer   try      {      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");      }   catch (e)      {      try         {         xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");         }      catch (e)         {         alert("您的瀏覽器不支援AJAX!");         return false;         }      }    } }</script><form name="myForm">使用者: <input type="text" name="username" />時間: <input type="text" name="time" /></form></body></html>
例子解釋:

首先聲明一個儲存 XMLHttpRequest 對象的 xmlHttp 變數。

然後使用 XMLHttp=new XMLHttpRequest() 來建立此對象。這條語句針對 Firefox、Opera 以及 Safari 瀏覽器。假如失敗,則嘗試針對 Internet Explorer 6.0+ 的 xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"),假如也不成功,則嘗試針對 Internet Explorer 5.5+ 的 xmlHttp=new ActiveXObject("Microsoft.XMLHTTP")。

假如這三種方法都不起作用,那麼這個使用者所使用的瀏覽器已經太過時了,他或她會看到一個聲明此瀏覽器不支援 AJAX 的提示。

注釋:上面這些瀏覽器定製的代碼很長,也很複雜。不過,每當您希望建立 XMLHttpRequest 對象時,這些代碼就能派上用場,因此您可以在任何需要使用的時間拷貝粘貼這些代碼。上面這些代碼相容所有的主流瀏覽器:Internet Explorer、Opera、Firefox 以及 Safari。

下一節為您展示如何使用 XMLHttpRequest 對象與伺服器進行通訊。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.