0
即時消息發送XHR請求,並希望繪製圖像與返回的數據畫布,我也想傳遞一個索引參數,以便我可以在特定位置繪製圖像。負載監聽器上的函數觸發太早
我的問題是我的功能太快,當傳遞參數向下,所以responseText
未定義。
// Outside loop
function drawSVG(i) {
svg = this.responseText;
svgImage = new Image();
svgImage.src = "data:image/svg+xml," + svg;
svgImage.load = artboardContext.drawImage(svgImage, i * sliceWidth, i * sliceHeight);
}
// Inside loop
(function(x) {
var colourReq = new XMLHttpRequest();
var count = x;
colourReq.addEventListener("load", function() {
drawSVG(count);
}, false);
colourReq.open("GET", "/color/" + hex);
colourReq.send();
})(x);
下面的作品,但我不能使用索引[I]用於定位SVG:
// Inside loop
(function(x) {
var colourReq = new XMLHttpRequest();
var count = x;
colourReq.addEventListener("load", drawSVG, false);
colourReq.open("GET", "/color/" + hex);
colourReq.send();
})(x);
我不知道這個問題的最好辦法。
你怎麼呼喚你的功能? –