我在 javascript 对象中有一组函数。这是其中之一:
addImage: function(evt) {
var file = evt.target.files[0];
/* Only process image files.*/
if(file.type.match('image.*')) {
/*Add image to FileReader object*/
var reader = new FileReader();
reader.readAsDataURL(file);
/*Add image to local storage */
reader.onload = (function(theFile) {
return function(e) {
localStorage.setItem(underlayer.url, e.target.result);
//add image
underlayer.setImage();
underlayer.setPosition();
setTimeout(underlayer.setHeight(), 5000);
};
})(file);
}
},
我希望 underlayer.setHeight() 在延迟后触发它是必要的,因为它读取加载到本地存储中的图像的高度,这需要几毫秒。但是,underlayer.setHeight 是立即触发的,而不是延迟。