2012-02-11 40 views
1

我想動態製作不同的YouTube JSON API請求,然後使用函數對我想要的數據進行排序。動態加載YouTube JSON API

當前遵循YouTube數據JSON API網站here上的示例。

這是我現在的代碼,它很好地讓我的id很好。 我的問題是目前它使用腳本標記和回調URL查詢來使用我的功能。是否有另一種方法可以在JavaScript中實現,並繼續執行調用getid函數的請求?

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<title>Untitled Document</title> 
</head> 
<body> 
<script type="text/javascript"> 
function getid(data) { 
    var i=0; 
    for(items in data.data){ 
     i++ 
     console.log(data.data.items[i].id) 
    } 
} 
</script><script type="text/javascript" src="https://gdata.youtube.com/feeds/api/videos?q=surfing&v=2&alt=jsonc&callback=getid"></script> 
</body> 
</html> 

回答

1

jsonp功能下面將動態創建一個腳本標記,並將其追加到身體。

function jsonp(url,callback) {      
    var script = document.createElement("script");   
    script.setAttribute("src",url); 
    script.setAttribute("type","text/javascript");     
    document.body.appendChild(script); 
} 

function getid(data) { 
    var i=0; 

    for(items in data.data){ 
    i++ 
    console.log(data.data.items[i].id) 
    } 
} 

// pass a url and callback 
var url = "https://gdata.youtube.com/feeds/api/videos?q=surfing&v=2&alt=jsonc&callback=getid"; 
jsonp(url, getid)