0

我一直在使用YouTube和api生成播放器區域,然後使用箭頭讓用戶點擊並滾動瀏覽視頻以在播放器區域播放新視頻。這在所有其他瀏覽器中都可以正常工作,除非它在ie7,8和9中顯示出來,但只在某些操作系統上顯示。例如,它似乎很好,在Windows 8中使用模擬器..任何幫助?在Internet Explorer中通過JavaScript請求YouTube API JSON供稿的問題

的jsfiddle:http://jsfiddle.net/9bBCG/(由於某種原因不能在這裏工作,認爲JSON提要可能無法正常工作 - 但是代碼不工作)

繼承人的位在那裏我檢索飼料:

var playListURL = 'http://gdata.youtube.com/feeds/api/users/BadbyMicroMovies/uploads?v=2&alt=json'; 
var videoURL= 'http://www.youtube.com/watch?v='; 

$.getJSON(playListURL, function(data) { 
    var list_data=""; 
    $.each(data.feed.entry, function(i, item) { 
     var feedTitle = item.title.$t; 
     var feedURL = item.link[1].href; 
     var fragments = feedURL.split("/"); 
     var videoID = fragments[fragments.length - 2]; 
     var url = videoURL + videoID; 
     var thumb = "http://img.youtube.com/vi/"+ videoID +"/default.jpg"; 
     list_data += '<li><a class="vid-link" href="'+ url +'?rel=0" title="'+ feedTitle +'"><img alt="'+ feedTitle+'" src="'+ thumb +'"</a></li>'; 
    }); 
    $(list_data).appendTo("#youtube-feed"); 

任何幫助是非常感謝,因爲我flumoxed!

+0

http://jsfiddle.net/mowglisanu/9bBCG/1/ – Musa 2013-03-05 19:27:11

+0

你能解釋一下你做了什麼來完成它嗎?就像我無法在jsfiddle中說的那樣。 – Amy 2013-03-05 19:42:48

+0

將onload更改爲無包裝頭 – Musa 2013-03-05 19:43:44

回答

0

Internet Explorer中才開始在10版支持標準CORS如果您正在使用Internet Explorer的舊版本,你可以不使用XMLHttpRequest(這是什麼$.getJSON()呼叫正在做直接請求的資源在不同的域)。

取而代之,您需要使用像JSON-P這樣的方法,該方法也適用於其他瀏覽器。您可以使用$.ajax()而不是$.getJSON(),並指定dataType: 'jsonp'參數,如jQuery docs中所述。

+0

Thankyou,我會看一下這個! :) – Amy 2013-03-06 19:07:12

+0

快速問題,我在做什麼錯在這裏 - http://jsfiddle.net/9bBCG/28/ – Amy 2013-03-06 21:52:44

+0

首先,有一個語法問題,你如何傳遞你的參數到$ .ajax()。第一個參數是一個JavaScript對象,並且缺少圍繞對象屬性的{}。我不確定是否還有其他問題。 – 2013-03-06 22:37:18