File tree Expand file tree Collapse file tree 2 files changed +51
-2
lines changed Expand file tree Collapse file tree 2 files changed +51
-2
lines changed Original file line number Diff line number Diff line change 4
4
"url" : " dataset" ,
5
5
"tags" : " dataset" ,
6
6
"support" : {
7
- "live" : " chrome" ,
7
+ "live" : " chrome opera " ,
8
8
"nightly" : " safari"
9
9
},
10
10
"test" : " 'dataset' in document.createElement('i')"
20
20
},
21
21
"test" : " Modernizr.history"
22
22
},
23
+ {
24
+ "desc" : " Browser based file reading" ,
25
+ "url" : " file-api-simple" ,
26
+ "note" : " Not part of HTML5" ,
27
+ "tags" : " file-api" ,
28
+ "support" : {
29
+ "live" : " firefox chrome opera"
30
+ },
31
+ "test" : " typeof FileReader != 'undefined'"
32
+ },
23
33
{
24
34
"desc" : " Drag files directly into your browser" ,
25
35
"url" : " file-api" ,
28
38
"support" : {
29
39
"live" : " firefox chrome"
30
40
},
31
- "test" : " typeof FileReader != 'undefined'"
41
+ "test" : " typeof FileReader != 'undefined' && Modernizr.draganddrop "
32
42
},
33
43
{
34
44
"desc" : " Simple chat client" ,
Original file line number Diff line number Diff line change
1
+ < title > File API (simple)</ title >
2
+ < article >
3
+ < p id ="status "> File API & FileReader API not supported</ p >
4
+ < p > < input type =file > </ p >
5
+ < p > Select an image from your machine to read the contents of the file without using a server</ p >
6
+ < div id ="holder "> </ div >
7
+ </ article >
8
+ < script >
9
+ var upload = document . getElementsByTagName ( 'input' ) [ 0 ] ,
10
+ holder = document . getElementById ( 'holder' ) ,
11
+ state = document . getElementById ( 'status' ) ;
12
+
13
+ if ( typeof window . FileReader === 'undefined' ) {
14
+ state . className = 'fail' ;
15
+ } else {
16
+ state . className = 'success' ;
17
+ state . innerHTML = 'File API & FileReader available' ;
18
+ }
19
+
20
+ upload . onchange = function ( e ) {
21
+ e . preventDefault ( ) ;
22
+
23
+ var file = upload . files [ 0 ] ,
24
+ reader = new FileReader ( ) ;
25
+ reader . onload = function ( event ) {
26
+ var img = new Image ( ) ;
27
+ img . src = event . target . result ;
28
+ // note: no onload required since we've got the dataurl...I think! :)
29
+ if ( img . width > 560 ) { // holder width
30
+ img . width = 560 ;
31
+ }
32
+ holder . innerHTML = '' ;
33
+ holder . appendChild ( img ) ;
34
+ } ;
35
+ reader . readAsDataURL ( file ) ;
36
+
37
+ return false ;
38
+ } ;
39
+ </ script >
You can’t perform that action at this time.
0 commit comments