我正在使用FileTransfer插件从远程服务器下载图像。
图像存储在“storage / emulated / 0 /”中 - 使用以下代码:
function downloadFile(fileDownloadName){
//console.log('downloadFile');
window.requestFileSystem(
LocalFileSystem.PERSISTENT,
0,
function(fileSystem){
//console.log('onRequestFileSystemSuccess');
fileSystem.root.getFile(
'dummy.html',
{create: true, exclusive: false},
function(fileEntry){
//console.log('onGetFileSuccess!');
var path = fileEntry.toURI().replace('dummy.html', '');
var fileTransfer = new FileTransfer();
fileEntry.remove();
fileTransfer.download(
'https://www.myserver.com/imagens/' + fileDownloadName,
path + fileDownloadName,
function(file) {
//console.log('download complete: ' + file.toURI());
return path + fileDownloadName;
},
function(error) {
console.log('download error source ' + error.source);
console.log('download error target ' + error.target);
console.log('upload error code: ' + error.code);
}
);
},
fail
);
},
fail
);
}
所以,我将路径+ fileDownloadName指向我图像的SRC,但图像没有出现。
var location = path + fileDownloadName;
window.resolveLocalFileSystemURL(location, function(oFile) {
oFile.file(function(readyFile) {
var reader= new FileReader();
reader.onloadend= function(evt) {
$(".circle-perfil").css('background-image', 'url(' + evt.target.result + ')');
};
reader.readAsDataURL(readyFile);
});
我有什么不对劲吗?我应该将图像存储在另一个文件夹中吗?如果是的话,该怎么做?
答案 0 :(得分:0)
如果您使用的是 img 标记,请将其图片设置为:
$(".circle-perfil").css('background', 'url(' + evt.target.result + ')');
或
$(".circle-perfil").css('content', 'url(' + evt.target.result + ')');
如果 div 或 span
$(".circle-perfil").css('background-image', 'url(' + evt.target.result + ')');
我把它设置为:
var image = document.getElementById('cameraPic');
image.src = 'path/of/image file';