2016-02-12 36 views
0

我正嘗試用CreateJS/PreloadJS預載圖像。這些圖像將替換具有id和class等屬性的圖像。當我使用JQuery替換圖像時,所有這些屬性都會丟失。如何使用CreateJS的PreloadJS加載圖像並保留屬性?

預加載圖像然後在我的頁面上顯示圖像的正確方法是什麼?

<html> 
    <img id="main" class="fit center"/> 
</html> 

function changeImage(event){ 
    $('#main').replaceWith(queue.getResult("main")); 
} 

function handleFileComplete(event){ 
    console.log(event.result); 
} 

function loadImage() { // jshint ignore:line 
    var preload = new createjs.LoadQueue(); // jshint ignore:line 
    preload.addEventListener("fileload", handleFileComplete); 
    preload.loadFile("img/main.png"); 
} 

$(document).ready(function() { 
    queue = new createjs.LoadQueue(); 
    queue.loadManifest([ 
     {id: "main", src:"img/main.png"} 
    ]); 
    queue.on("complete", handleFileComplete, this); 
}); 

回答

0

在使用JQuery替換元素之前,將屬性應用於新圖像。

var newImage = queue.getResult(label); 
newImage.setAttribute("class", "fit center"); 
newImage.setAttribute("id", "main"); 
$('#main').replaceWith(newImage);