通过文件输入更改背景图像 [英] Change a background image through a file input
问题描述
我的问题是如何将div的背景图像更改为由输入文件元素选择的图像。当网站用户点击另一个输入元素时,文件输入被隐藏并执行:
$( function(){
$('#verborgen_file')。hide();
$('#uploadButton')。on('click',function(){
$(' ('click');
});
});
所以文件输入是#verborgen_file,另一个输入是#uploadButton,现在我正在寻找当用户点击#uploadButton并因此触发#verborgen_file并选择一个图像(并且只有一个图像)时,div #pf_foto的背景图像会变为所选图像。
我已经尝试了很多东西,但事先并未得到它的工作,谢谢!
---- EDIT- ---
我试过这个:
$ $ $ $ $(code $ #verborgen_file)。on(change,function(){
var files = !! this.files?this.files:[];
if(!files.length ||!window.FileReader)return;
if(/^image/.test(files [0] .type)){
var reader = new FileReader();
reader.readAsDataURL (files [0]);
reader.onloadend = function(){
$(#pf_foto)。css(background-image,url(+ this.result +) );
}
}
});
请看下面的代码片段。希望这会对你有帮助。