请问前端如何选择目录进而得到路径呢?-灵析社区

编程界菜niao

请问,前端如何选择目录路径呢? 比如,想要做到这样的功能,就是弹出框我们来进行目录的选择。 ![image.png](https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250103/c8dfbac9808731244be18ff2a6248c00.png) 然后得到路径,比如: D:/aaa/bbb/ 或者macOS中: /Users/debopo/Downloads/

阅读量:276

点赞量:16

问AI
拿不到完整路径,因为隐私和安全问题。 选择文件/文件夹获取到的是一个虚拟路径或者说是一个短目录。 «注意事项:当使用 "" 选择文件时,出于明显的安全原因,源文件的实际路径没有显示在 "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)