ホームページ  >  記事  >  ウェブフロントエンド  >  ブラウザーの Ajax サポートに関する簡単な説明

ブラウザーの Ajax サポートに関する簡単な説明

青灯夜游
青灯夜游オリジナル
2018-11-08 16:46:202729ブラウズ

この記事の内容は、XMLHttpRequest オブジェクトを作成する互換性の記述方法を誰もが理解できるように、Ajax のブラウザーのサポートについて簡単に説明することです。困っている友人は参考にしていただければ幸いです。

まず、Ajax の鍵となるのは XMLHttpRequest オブジェクトであることを知っておく必要があります。このオブジェクトは、バックグラウンドでサーバーとデータを交換するために使用され、Ajax はそれを通じてブラウザーのバックグラウンド データを取得できます。 [推奨される関連ビデオ チュートリアル: Ajax チュートリアル ]

ただし、ブラウザーが異なれば、XMLHttpRequest オブジェクトを作成する方法も異なります。例:

IE ブラウザは ActiveXObject を使用して作成しますが、他のブラウザは XMLHttpRequest という名前の JavaScript 組み込みオブジェクトを使用して作成します。

これは、Ajax をサポートするブラウザーが異なることにもつながります。すべてのブラウザーが Ajax をサポートするわけではありません。 AJAX をサポートする主要なブラウザのリストを見てみましょう:

1、Mozilla Firefox 1.0 以降。

2. Netscape 7.1 以降。

3. Apple Safari 1.2 以降。

4. Microsoft Internet Explorer 5 以降。 ####5。

6、Opera 7.6 以降。

さまざまなブラウザー用にこのオブジェクトを作成するには、特定のコードを記述する必要があります。 XMLHttpRequest オブジェクトを作成する互換性の記述方法を見てみましょう。

ここでは、JavaScript で try...catch ステートメントを使用する必要があります。try...catch ステートメントに慣れていない場合は、次のようにします。以前の記事 [

What is the try...catch state in js?] を参照してください。使い方?

]!

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<script language = "javascript" type = "text/javascript">
         //浏览器支持代码
         function ajaxFunction() {
            var ajaxRequest;  // 声明一个ajaxRequest变量,用来保存XMLHttpRequest 对象

            try {
               // 兼容:Opera 8.0+, Firefox, Safari 
               ajaxRequest = new XMLHttpRequest(); //创建XMLHttpRequest 对象
            } catch (e) {

               // 兼容:Internet Explorer 浏览器
               try {
                  ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
               } catch (e) {
                  
                  try {
                     ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
                  } catch (e) {

                     // 出了问题时
                     alert("您的浏览器不支持Ajax!");
                     return false;
                  }
               }
            }
         }
      </script>
	</head>
	<body>
		<form name = &#39;myForm&#39;>
	       姓名: <input type = &#39;text&#39; name = &#39;username&#39; /> <br />
	       时间: <input type = &#39;text&#39; name = &#39;time&#39; />
        </form>
	</body>
</html>
上記の JavaScript コードでは、XMLHttpRequest オブジェクトの作成を 3 回試行しています。

最初の試み:

// 兼容:Opera 8.0+, Firefox, Safari 
ajaxRequest = new XMLHttpRequest();

このステートメントは、Opera 8.0、Firefox、Safari ブラウザーで機能します。それが失敗した場合は、Internet Explorer ブラウザ上で正しいオブジェクトの作成を 2 回試行することもできます。

2 回目と 3 回目の試行: Internet Explorer ブラウザと互換性あり

//第二次尝试:
// 兼容:Internet Explorer 6.0+
ajaxRequest = new ActiveXObject(“Msxml2.XMLHTTP”);

//第三次尝试:
// 兼容:Internet Explorer 5.5+
ajaxRequest = new ActiveXObject(“Microsoft.XMLHTTP”);

If If noneこれら 3 つの方法のうちどれも機能する場合、ユーザーのブラウザが古いため、ブラウザが AJAX をサポートしていないことを示すプロンプトが表示されます。

注:

上記のブラウザ用にカスタマイズされたコードは、非常に長く複雑です。ただし、このコードは XMLHttpRequest オブジェクトを作成する場合に便利なので、必要なときにいつでもこのコードをコピーして貼り付けることができます。上記のコードは、Internet Explorer、Opera、Firefox、Safari などの主要なブラウザすべてと互換性があります。

まとめ: この記事で紹介した内容は以上です。皆様の学習に少しでもお役に立てれば幸いです。

以上がブラウザーの Ajax サポートに関する簡単な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。