拿不到完整路径,因为隐私和安全问题。
选择文件/文件夹获取到的是一个虚拟路径或者说是一个短目录。
«注意事项:当使用 "" 选择文件时,出于明显的安全原因,源文件的实际路径没有显示在 "input" 的
"value" 属性中。实际上显示了文件名,并用 "C:\fakepath\"
附加在路径的开头。这种怪癖有一些历史原因,但它在所有现代浏览器中都受到支持,而且实际上"在规范中也有定义" (https://link.segmentfault.com/?enc=0YSzPsIE8Y2%2B9rQVuHiVKA%3D%3D.%2B15HrCCY%2B0LyShL2%2F%2FTho5Nz27Mf1MXeyx0nNIGIVDayflIVjGzFi1ud5Qha1Br6zzaOslDROnUU2RqX15b8VAxtrGeCoMtJi%2FxRCjM%2FnGI%3D)。»
" - HTML(超文本标记语言) | MDN" (https://link.segmentfault.com/?enc=%2Bl1%2ByCy8qyBc7Ks2s%2FUwDg%3D%3D.x9ysS4LiafIg1geGt%2Fs42zTSSWdGeI51c9d%2BBvbAL0OtTtVo9uWewhuJjQWBtB77bo7cZHuMt7uPR5bQpRgyGOZ4ZkLeeOcMA6ahMGUkCOw%3D)
«特别提醒:假设文件路径是 "C:\f1\f2\f3\file.txt", 用户选择的是 f1 文件夹,则 Chrome、Firefox、Edge
都能正确返回 "f2/f3/file.txt" 值。而国产的 QQ 浏览器、360 浏览器、UC 浏览器、搜狗浏览器都只能返回
"f3/file.txt"。也就是国产浏览器调用 "webkitRelativePath" 返回的结果都不会是你希望得到的路径,请注意使用时的细微差距。»
"File.webkitRelativePath - Web API 接口参考 | MDN" (https://link.segmentfault.com/?enc=0gifamwU24wmofUe%2Fks%2BnQ%3D%3D.GhzxRhezlIYb%2FyY8mREKf42ZkvhQ%2FLjjJRq23yLMm558uOcab9zjJ%2BqaAh%2BEOScj8XVC8xqdyDR4FqGOY4ifK36bZFlg8XtQ4cGN9iZh3%2Bs%3D)