使用jQuery在上传图片之前实现缩略图预览
jQuery代码
01 | $( "#uploadImage" ).on( "change" , function (){ |
02 | // Get a reference to the fileList |
03 | var files = !! this .files ? this .files : []; |
04 | |
05 | // If no files were selected, or no FileReader support, return |
06 | if (!files.length || !window.FileReader) return ; |
07 | |
08 | // Only proceed if the selected file is an image |
09 | if (/^image/.test( files[0].type)){ |
10 | |
11 | // Create a new instance of the FileReader |
12 | var reader = new FileReader(); |
13 | |
14 | // Read the local file as a DataURL |
15 | reader.readAsDataURL(files[0]); |
16 | |
17 | // When loaded, set image data as background of div |
18 | reader.onloadend = function (){ |
19 | |
20 | $( "#uploadPreview" ).css( "background-image" , "url(" + this .result+ ")" ); |
21 | |
22 | } |
23 | |
24 | } |
25 | |
26 | }); |
以下是HTML代码,包含一个显示缩略图的div和一个file input field。
HTML代码
1 | < div id = "uploadPreview" ></ div > |
2 | < input id = "uploadImage" type = "file" name = "photoimage" class = "fimg1" onchange = "PreviewImage();" /> |
为我们的缩略图设置CSSwa 。
CSS代码
1 | <strong>#uploadPreview { |
2 | width : 168px ; |
3 | height : 168px ; |
4 | background-position : center center ; |
5 | background- size : cover; |
6 | border : 4px solid #fff ; |
7 | -webkit-box-shadow: 0 0 1px 1px rgba( 0 , 0 , 0 , . 3 ); |
8 | display : inline- block ;</strong> |