actually i found something in html5. its very quirky but...
var reader = new FileReader();
<input id="file1" type="file" onChange='readText()' />
there's issues with the reader.result. here it works fine, but in other cases reader.result has returned null when called right after the readAsText function. so putting w/e instruction that calls reader.result into a setTimeout("instr", 10); would solve the issue.
Now i just wonder why it wont work in chrome. I've analyzed stuff and i can see chrome is fully compatible with the FileSystem object and the element.files. I can't figure out why chrome always forget passing the value from readAsText into the reader.result value. reader.result just remains blank. urghh