js获取上传图片全路径,支持ie,firefox
时间: 2024-05-13 17:18:14 浏览: 161
在 HTML5 中,可以使用 `FileReader` 对象读取本地文件,并且使用 `URL.createObjectURL` 创建一个表示该文件的 URL。但是,为了兼容 IE,我们需要使用 ActiveX 对象来实现相同的功能。
下面是一个获取上传图片全路径的 JavaScript 函数,支持 IE 和 Firefox:
```javascript
function getFullPath(fileInput) {
if (fileInput) {
// 如果支持 File API
if (window.FileReader) {
var reader = new FileReader();
// 获取文件
var file = fileInput.files[0];
reader.onload = function () {
console.log(reader.result); // 文件内容
console.log(fileInput.value); // 文件路径
}
reader.readAsDataURL(file);
} else {
// 使用 ActiveX 对象获取文件路径
var filePath = fileInput.value;
var fileSystem = new ActiveXObject("Scripting.FileSystemObject");
var file = fileSystem.GetFile(filePath);
var fullPath = file.Path;
console.log(fullPath);
}
}
}
```
其中,`fileInput` 是一个上传文件的 `<input>` 元素。在支持 File API 的浏览器中,我们使用 `FileReader` 对象读取文件内容,并使用 `URL.createObjectURL` 创建一个表示该文件的 URL。在不支持 File API 的浏览器中,我们使用 ActiveX 对象获取文件路径,然后获取文件的完整路径。
阅读全文