• 締切済み

jqueryプラグイン ajax IEでのエラー

youtube-TVというJqueryプラグインを使用したいのですが、IE10以下だと、エラーが起きてしまいます。https://github.com/jakiestfu/Youtube-TV デベロッパーツールで確認すると、ajaxの通信エラーのようなのですが、対処法がわからりません。どなたかご指南頂けないでしょうか? 宜しくお願いします。 ////省略/////// ajax: { get: function(url, fn){ var handle; if (win.XMLHttpRequest){ handle = new XMLHttpRequest(); } else { handle = new ActiveXObject("Msxm12.XMLHTTP"); } handle.onreadystatechange = function(){ if (handle.readyState === 4 && handle.status === 200){ fn.call(this, JSON.parse(handle.responseText)); } }; handle.open("GET",url,true);  /*←この部分が通信エラーと表示されます。*/ handle.send(); } }, ////省略/////// ・ ・ ・ ・ ////省略/////// prepare = { youtube: function(fn){ var tag = doc.createElement('script'); tag.src = "//www.youtube.com/iframe_api"; var firstScriptTag = doc.getElementsByTagName('script')[0]; firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); win.onYouTubeIframeAPIReady = fn; }, ////省略/////// ・ ・ ・ ・ ////省略/////// compileList: function(data){ if(data && data.feed){ utils.ajax.get( utils.endpoints.userInfo(), function(userInfo){ var list = '', user = { title: userInfo.entry.title.$t, url: '//youtube.com/user/'+userInfo.entry.yt$username.display, thumb: userInfo.entry.media$thumbnail.url, summary: userInfo.entry.summary.$t, subscribers: userInfo.entry.yt$statistics.subscriberCount, views: userInfo.entry.yt$statistics.totalUploadViews },

みんなの回答

  • yamada_g
  • ベストアンサー率68% (258/374)
回答No.1

このプラグインに関しては全く何も知らないのですが、 >handle = new ActiveXObject("Msxm12.XMLHTTP"); ここは handle = new ActiveXObject("Msxml2.XMLHTTP"); ではないですか?

nerdagainstweb
質問者

お礼

ご回答ありがとうございます。

関連するQ&A

  • AJAXの書き方について

    <script type="text/javascript"> $( function() { $( '#ajax-button' ) .click( function() { $.ajax({ url: 'http://localhost:8080/app/family', type:'GET', data: {test1 : 'aaa', test2 : 'bbb' }, dataType: 'jsonp', success: function(data) { alert("ok"); }, error: function(XMLHttpRequest, textStatus, errorThrown) { alert("ng"); } }); }); } ); </script> この部分は何を意味しているのでしょうか? $( '#ajax-button' ) .click( またここの部分をIDにして二つ別々のIDを書いてblur(fn()にしたい場合はどうすればいいのでしょうか? $("[id$=NO]").blur(function(){ $("[id$=NM]").blur(function(){ function() { $.ajax({ url: 'http://localhost:8080/app/family', type:'GET', data: {test1 : 'aaa', test2 : 'bbb' }, dataType: 'jsonp', success: function(data) { alert("ok"); }, error: function(XMLHttpRequest, textStatus, errorThrown) { alert("ng"); } }); }); }); }); このようにしても動きません。 正しい書き方を教えていただきたいです。

  • jQuery.ajax()のリクエストが返らない

    下のような通信処理を書いています。 var returnObj = null; var errorMsg = ''; function getAjaxHttpRequest(prms) { returnObj = null; if (prms["sendXml"] == null) { prms["sendXml"] = ""; } jQuery.ajax({ contentType: prms["contentType"] , type: prms["type"] , url: prms["url"] , timeout: prms["timeout"] , cache: prms["cache"] , async: false , processData: false , data: "formId=" + prms["formId"] + "&submitStatus=" + prms["submitStatus"] + "&appId=" + prms["appId"] + "&data=" + prms["sendXml"] , success: function(data, dataType) { errorMsg = ""; } , error: function(XMLHttpRequest, textStatus, errorThrown) { errorMsg = textStatus + ' - ' + errorThrown; } , complete : function(xmlHttpRequest, textStatus) { var READYSTATE_COMPLETED = 4; if( xmlHttpRequest.readyState == READYSTATE_COMPLETED ) { var HTTP_STATUS_OK = 200; if( xmlHttpRequest.status == HTTP_STATUS_OK ) { returnObj = { resultCode: 'success' , data: xmlHttpRequest.responseText }; } else { if (xmlHttpRequest.responseText == '') { returnObj = { resultCode: 'error' , textStatus: xmlHttpRequest.status + " - " + xmlHttpRequest.statusText , responseText: errorMsg }; } else { returnObj = { resultCode: 'error' , textStatus: xmlHttpRequest.status + " - " + xmlHttpRequest.statusText , responseText: xmlHttpRequest.responseText }; } } } else { returnObj = { resultCode: 'error' , textStatus: xmlHttpRequest.readyState + " - " + xmlHttpRequest.status + " - " + xmlHttpRequest.statusText , responseText: xmlHttpRequest.responseText }; } errorMsg = ''; } }); return returnObj; } まれに最後のreturnObjがnullで返ってくるようです。なぜでしょうか? 何が起きている可能性があるでしょうか。 jquery-1.4.3です。

  • jquery ajax 外部html 読み込み

    現在、数年前にjquery(v1.4.3)を用いて制作したページの更新を行っており それに伴いjqueryも最新版(v1.11.1)への移行を試している最中なのですが ajaxの外部htmlを読み込む処理が実行されなくなり困っております。 旧バージョンとではメソッドの記述法が異なることは理解できておりますが 色々と書き換えてみたものの、以前のように動作させる事ができません。 以下がそれぞれの記述になりますが、もし問題にお気付きになられましたら ご指摘いただけますと幸いです。 jquery(v1.4.3): function loadAdd(obj){ $.ajax({ async: true, type: 'GET', url: tgtURL, dataType: 'html', cache: false, success: function(html){ var $div = $("#add"); $div.html(html); }, error: function(xhr, status, errorThrown){ alert("not found."); } }); } jquery(v1.11.1): function loadAdd(obj){ $.ajax({ async: true, type: 'GET', url: tgtURL, dataType: 'html', cache: false, }) .done(function(html){ var $div = $("#add"); $div.html(html); }) .fail(function(xhr, status, errorThrown){ alert("not found."); }); }

    • ベストアンサー
    • AJAX
  • ajaxの結果をphpで取得する方法

    お世話になっております。 PHPは全くの初心者ですが、jqueryのajaxでGETした内容を PHPでも使用したく、ご教示願いたいのですが、 以下のajaxの「info.a」の値をphpで使用するには どうすればよいでしょうか。 $.ajax({ type: 'GET', scriptCharset:'utf-8', url: '/hoge.jsp', dataType: 'text', cache : false, }) .success(function(data){ var data = data.split(','); info = { a :data[0], b :data[1], }; }) .error(function(XMLHttpRequest, textStatus, errorThrown) { return false; }); <?php $a = $_GET['info.a']; ?> 何卒よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • Ajax・jQueryでGET時にIEで文字化け

    Ajax・jQueryで日本語をGETするとき、IEで文字化けします。 (Firefox,chromeでは文字化けは起こりません。IE6/7/8で確認すると文字化けします) どのようにしたら文字化けが起こらなくなるか教えていただければと思います。 環境 PHP:5.1.6 サーバー・HTMLの文字コードはUTF-8 下記のようなリンクを作り、「jquery.url.js」でパラメータを取得しています。 <a href="./test.php?keyword=テスト&cate=1"> (実際には下記のソースに示しますが、テストの文字はurlencordしています。) 【javascript部分】 <script type="text/javascript" src="jquery.url.js"></script> <script type="text/javascript"> $().ready ( function() { $('#sample-get').find('a').click ( function() { var url = $.url ( $(this).attr('href') ); $.ajax ({ type: 'GET', url: 'send.php', cache: false, data: url.attr ( 'query' ), success: function ( data, dataType ) { $('#test').html ( data ); }, error: function ( XMLHttpRequest, textStatus, errorThrown ) { this; alert('Error : ' + errorThrown); } }); return false; }); 【HTML(PHP)部分】 $keyword='テスト'; $keyword=urlencord($keyword);//urlエンコード echo<<<EOF <div id="sample-get"> <a href="./test.php?keyword=$keyword&cate=1"><img src="images/sample1.png" alt="sample1" height="200" width="200"></a> </div> EOF; 【PHP部分(send.php)】 <?php echo $_GET['keyword']; echo urldecord($_GET['keyword']); echo $_GET['cate']; ?>

    • ベストアンサー
    • AJAX
  • jqueryのajax()内からグローバル配列に

    jqueryのajax(){success: function()内からグローバル連想配列に値を格納したい。 jqueryのajax()でhtmlファイルを読み込み配列に格納。 その後他の関数で使いたいと考えていますが グローバル連想配列に格納できません。 success: function()内でさらに関数を定義もして見ましたが反応せず。。。 (プルダウンメニューを変更したら実行する関数) 以下ソースになります。 ----------------------------------------------------------- $(function() { objectarray = new Object(); $.ajax({ type: 'GET', url: 'hoge.html', dataType: 'html', success: function(data) { var text = [];   $(data).each(function(i){ text = $(this).text().split("\n"); }); var alldata = $.grep(text, function(e){return e;});//空白やデータなしを削除 for(i=0; i<alldata.length; i++){ objectarray[i] = (alldata[i]); alert("forの中" + objectarray[i]);//取得できた } alert("forの外" + objectarray);//取得できた return objectarray;//あってもなくても変わらない。。。 }, error:function() { alert('問題がありました。htmlデータがありませんでした。'); }             //return objectarray;←有効にするとjsが認識されなくなります。 }); alert("ajaxの外" + objectarray[0]);//何も表示されない、firebugでみるとobjectarrayには値が入っている。 }); ----------------------------------------------------------- 上記はnew Object()でやっておりますがnew Array()でも同じ結果でした。 回避策をご教授いただけましたら幸いです。 どうぞよろしくお願いいたします。

  • Jquery.ajaxでHTML読み込み

    現在、Jquery.ajaxを使って外部HTMLの読み込み処理を行い、処理完了後にフェードで表示させるということをしているのですが、読み込んだHTMLに貼り付けてある画像が読み込まれる前にHTMLが表示されてしまい、困っています。 Jquery.ajaxでは内包されている画像の監視まではできないのでしょうか? 下記が今作っているコードです。 $contest.css({ "opacity": 0 }); $.ajax({ type: "GET", url: "hoge.html" dataType: "html", success: function(data) { $contest.html($(data).find("#hoge")); }, complete: function() { $contest.stop().animate({ "opacity": 1 }, 1000, "easeOutCubic"); } }); おわかりになる方、ご教授お願いします。

  • IEでAjax

    現在、以下のソースをもとにAjaxのテストをしているのですが FireFoxだと正常に動作されますが、IE8だと無反応です。 もちろんJavaScriptは有効にしています。 この原因はどこにあるのでしょうか? ■test.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitiona..."> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>テスト</title> <script type="text/javascript"> <!-- var ajax = new XMLHttpRequest(); function makeTable(keyword) {  ajax.onload = function() {   document.getElementById('layerTable').innerHTML = ajax.responseText;  }  ajax.open('GET', 'sample.php?keyword=' + keyword, true);  ajax.send(null); } </script> </head> <body> <h1>Ajaxのテスト</h1> <form id="formMain" name="formMain" method="post" action=""> <p>キーワードを入力して、表示するボタンをクリックしてください。</p> <p> <input type="text" name="keyword" size="35"> <input name="buttonMake" type="button" id="buttonMake" value="表示する" onClick="makeTable(this.form.keyword.value)" /> </p> </form> <div id="layerTable">ここに応答が表示されます</div> </body> </html> ■sample.php <?php $keyword = $_GET['keyword']; $doc = "<b>Ajaxのテストです</b><br />"; $doc .= "キーワードは{$keyword}"; print($doc); ?>

    • ベストアンサー
    • AJAX
  • Ajax・jQueryでGETとPOSTする方法

    画像をクリックしたときにjQuery,Ajaxを利用してGET/POSTをしたいです。 POSTとGETは良く使うので今回両方の流れを知りたいと思います。 PHPではPOST、GETは使うことができます。javascript,jQueryはちょっと触ったことのある程度です。 フォームに値を入力してjQueryとAjaxでPOSTでデータを送るのは下記ホームページを参考にしてみたら成功しました。 http://webcake.no003.info/webdesign/jquery-ajax-php-post-sample.html 今回は下記のような複数のパラメータを送信したいと思います。 画像Aをクリックした時にkeyword=aaaa,cate=1 画像Bをクリックした時にkeyword=bbbb,cate=2 画像Cをクリックした時にkeyword=cccc,cate=3 今までPHPでGETを使っていた時のHTML部分です↓ <a href="index.php?keyword=aaaa&cate=1"><img src="images/a.jpg"></a> <a href="index.php?keyword=bbbb&cate=2"><img src="images/b.jpg"></a> <a href="index.php?keyword=cccc&cate=3"><img src="images/c.jpg"></a> 「send.phpファイル」 <?php //POSTでデータが送られた場合 echo $_POST['keyword'].'<br>'; echo $_POST['cate'].'<br>'; //GETでデータが送られた場合 echo $_GET['keyword'].'<br>'; echo $_GET['cate'].'<br>'; ?> ==GET================================================================ (HTML部分) <a href="index.php?keyword=aaaa&cate=1"><img src="images/a.jpg"></a> の記載方法だと、クリックしたときにアドレスバーにアドレスが入力されるのでページが切り替わってしまいAjaxにならないので違う形にする必要があると思いますがどのようにkeyword,cateのパラメータを持たせればよいのでしょうか? または、この形のままで良く、リンクした時にページが飛ばないような処理方法があるのでしょうか?(またはAjaxではあまりGETは使わないのでしょうか?) 上記に記載した、POSTの参考例のソースを記載します。 GETの場合にどのように変えたらよいのでしょうか。 $(document).ready(function() { var data = {request : $('#request').val()};//GETで複数値対応に書き換えが必要。 $.ajax({ type: "GET", url: "send.php", data: data, success: function(data, dataType) { $( '#test' ) . html( data ); },error: function(XMLHttpRequest, textStatus, errorThrown) { this; alert('Error : ' + errorThrown); } }); }); ==POST================================================================ (HTML部分) formを使う形になると思いますが、どのような書き方が良いのか教えて下さい。 画像を使うと下記のようになるとは思いますが、A,B,Cそれぞれにkeyword,cateの情報をどのように持たせておいたらよいのかがわかりません。 <form> <button type="submit" name="" value="*****"><img src="sample.gif"></button> </form> (jQuery部分) $(document).ready(function() { var data = {request : $('#request').val()};//POSTで複数値対応に書き換えが必要。 $.ajax({ type: "POST", url: "send.php", data: data, success: function(data, dataType) { $( '#test' ) . html( data ); },error: function(XMLHttpRequest, textStatus, errorThrown) { this; alert('Error : ' + errorThrown); } }); }); 以上、よろしくお願い致します。

    • ベストアンサー
    • AJAX
  • ajaxでapi

    ajaxでapiから値を取得しています。 初心者で申し訳ありませんが、ajaxは非同期の通信を利用しているようですが、 同期かつリフレッシュなしで値を取得できないのでしょうか? よろしくお願いします。 function startWave(){ var arry=["a","b","c"]; for(var i=0;i<arry.length;i++){ dotAjax(arry[i]); } } function dotAjax(str){ $.ajax({ type: 'GET', 略 success:function( aのajax処理が終わったら、bのajax処理を行いたい } } }

    • ベストアンサー
    • AJAX

専門家に質問してみよう