2011-02-02 3 views
0

XMLHttpRequestはすべての主要なブラウザでサポートされています。xmlhttprequestを開始/作成する最も良い方法は何ですか(主要なブラウザで動作するように)?

go googleを起動して、さまざまなスニペットを見つけたら、それを開始してください。

私が使用するものは次のとおりです。

function getNewHTTPObject() 
{ 
     var xmlhttp; 

     /** Special IE only code ... */ 
     /*@cc_on 
      @if (@_jscript_version >= 5) 
       try 
       { 
        xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); 
       } 
       catch (e) 
       { 
        try 
        { 
         xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 
        } 
        catch (E) 
        { 
         xmlhttp = false; 
        } 
      } 
      @else 
      xmlhttp = false; 
     @end @*/ 

     /** Every other browser on the planet */ 
     if (!xmlhttp && typeof XMLHttpRequest != 'undefined') 
     { 
      try 
      { 
       xmlhttp = new XMLHttpRequest(); 
      } 
      catch (e) 
      { 
       xmlhttp = false; 
      } 
     } 

     return xmlhttp; 
} 

は、より良いものあります?

本当にありがとうございました。

+0

一般的なフレームワークが使用するものを見てください。フレームワークは、ユーザーがブラウザに依存しないコードを記述できるようにします。実際には、これは例えばJQueryのajaxを使ってはるかに簡単ですが、純粋なjavascript(なぜ?)を主張している場合、背後で何が行われているかをチェックしてください。 – Konerak

+0

純粋なjavascriptが正しいです。私がする必要があるのは、「火と忘れ」のパターンを実装することです なぜそのためのフレームワークが必要でしょうか? フレームワークの軽さにかかわらず – chacko

+0

私はフレームワークを使用するように言っているわけではありませんが(2行のコードで質問を解決し、将来の互換性を保証するので、考慮する必要があります)、私はフレームワークが存在し、これを行う。どちらかを使用するか、それをどうやって見て自分でやり直すか(なぜ?) – Konerak

答えて

0

最も簡単な方法は、必要なクロスブラウザ機能をすべて備えたjQueryのようなフレームワークを使用することです。

+1

非常に残念な答えです。 JQueryを使う! 私はあなたに投票するのに十分な評判を得ていないのは幸運です。 – chacko

+0

@chacko:なぜそれは残念ですか?あなたはあなたの質問でフレームワークを使いたくないと言っていませんでした。開発者は、jQuery ajaxがすべてのブラウザで正しく機能するようにするためにかなりの時間を費やしました。あたかも車輪を再構築しようとしているかのように聞こえる。 –

+1

@chacko:「すべてのブラウザで動作するようにするには、どのようにXをjavascriptで行うことができますか」と尋ねると、なぜそれを行うために特別に設計されたフレームワークを使用するように驚いていますか?なぜ新しいものを再発明し、新しいブラウザ(バージョン)ごとに再訪してコードを再テストするのですか?この回答は投票に値するものではなく、間違っていません。あなたがそれらを好きではないので、あなたは答えを下降させるべきではありません... – Konerak

関連する問題