2012-10-16 31 views
2

資料照片到HTML5畫布我非常新的HTML5和想知道我怎麼會去加10個隨機的Facebook好友的個人資料圖片的使用JavaScript的HTML5畫布,我已經找遍了所有在網,還沒有找到一個可行的解決方案,下面是我一直在玩大約有,我已經創建了一個Facebook應用程序具有所需權限,並能得到朋友和他們的個人資料圖片列表,我只是想不通的例子如何將它們添加到HTML5 Canvas。如何添加Facebook好友使用JavaScript

<script> 
    function loadImages(sources, callback) { 
    var images = {}; 
    var loadedImages = 0; 
    var numImages = 0; 
    // get num of sources 
    for(var src in sources) { 
     numImages++; 
    } 
    for(var src in sources) { 
     images[src] = new Image(); 
     images[src].onload = function() { 
     if(++loadedImages >= numImages) { 
      callback(images); 
     } 
     }; 
     images[src].src = sources[src]; 
    } 
    } 

    window.onload = function(images) { 
    var canvas = document.getElementById("myCanvas"); 
    var context = canvas.getContext("2d"); 

    var sources = { 
     canvasbackground: "prof.jpg", 
     userpic1: "https://graph.facebook.com/1645410740/picture", 
     userpic2: "https://graph.facebook.com/100000557085310/picture" 
    }; 

     loadImages(sources, function(images) { 
     context.drawImage(images.canvasbackground, 0, 0, 422, 464); 
     context.drawImage(images.userpic1, 33, 28, 70, 70); 
     context.drawImage(images.userpic2, 130, 28, 70, 70); 
    }); 
    }; 

</script> 

任何幫助將不勝感激。

+0

'drawImage'期待一個'Image'對象,而不是URL。 – Shmiddty

+0

Shmiddty您好據我可以告訴圖像對象是使用創建「爲(在源變種SRC){圖像[SRC] =新的圖像();」附近的代碼和然後將圖像的傳遞給該對象的URL的開頭,我可以得到圖像使用URL沒有問題,現在只是一個增加10個隨機的Facebook好友圖像的使用JavaScript的HTML5 Canvas的事情加載。謝謝你的幫助。 – Malcolm

+0

你說得對,代碼看起來很合理。你的'loadImages'回調被調用了嗎? – Shmiddty

回答

0

所以,肯定首先,我將改變numImages到剛好等於sources.length,然後回調,做

if(! -- numImages){ // once it gets down to 0, it's done, probably want to name it loadingImages 
    //done 
} 

把一些控制檯日誌,看看實際發生。