出于安全考虑,浏览器不允许直接获取浏览按钮的全路径。不同浏览器甚至不同版本获取全路径的方法也不一样。以下代码可以获取IE、火狐全路径。

//获得完整路径   obj是浏览按钮对象
function getPath(obj) {
  if (obj) {
   var agent = window.navigator.userAgent;
   if (agent.indexOf("MSIE") >= 1) {//ie
    obj.select(); return document.selection.createRange().text;
   }
   else if (agent.indexOf("Firefox/6") >= 0) {//火狐6
    if (obj.files) {
     return obj.files.item(0).getAsDataURL();
    }
     return obj.value;
   }
   else if (agent.indexOf("Firefox/7") >= 0 || agent.indexOf("Firefox/8") >= 0) {//火狐7+
    return window.URL.createObjectURL(document.getElementById("photo").files[0]);
   }
   return obj.value;
   }
}

目前没有找到获取Chrome全路径的js方法,若要做Chrome图片上传功能,可以考虑先将图片上传到服务器。草蛋的浏览器啊。