Это невозможно, даже ссылка на файл с использованием file://
не будет работать, поскольку, когда вы получаете значение из поля ввода файла, вы получаете только имя файла, а не путь. Поэтому невозможно узнать, где находится изображение. Чтобы это работало, вам нужно использовать загрузчик на основе Flash.
Это, безусловно, мера безопасности, поскольку Internet Explorer даёт путь к вам, единственное, что он всегда c:\fakepath\filename.png
. Я предполагаю, что браузеры делают свою работу, препятствуя JavaScript получать любую значимую информацию из файловой системы.
Возвращаемые значения для разных браузеров при попытке загрузить файл C:\test.txt
:
Firefox 3.5.6
test.txt
Chrome 3.0.195.38
test.txt
Опера 10.00
C:\fake_path\test.txt
Internet Explorer 8
C:\fakepath\test.txt