每一刻都是一个崭新的开始。

IE8 javscript上传文件出现 fakepath 的解决方法

IE8的安全性有所改动,用JavaScript预览本地图片的功能失效了,真实的路径被C:\fakepath\ 取代了,原来是因为IE8增加了安全选项,默认情况下不显示上传文件的真实路径,进入internet选项,修改下设置即可显示真实的文件路径。

工具 -> Internet选项 -> 安全 -> 自定义级别 -> 将本地文件上载至服务器时包含本地目录路径,选中启用即可。

大小: 21.84 K
尺寸: 500 x 393
浏览: 4 次
点击打开新窗口浏览全图

附带不用修改浏览器安全配置的javascript代码,兼容ie, firefox全系列

JavaScript代码
  1. function getPath(obj)  
  2. {  
  3.   if(obj)  
  4.    {  
  5.   
  6.     if (window.navigator.userAgent.indexOf("MSIE")>=1)  
  7.      {  
  8.        obj.select();  
  9.   
  10.       return document.selection.createRange().text;  
  11.      }  
  12.   
  13.     else if(window.navigator.userAgent.indexOf("Firefox")>=1)  
  14.      {  
  15.       if(obj.files)  
  16.        {  
  17.   
  18.         return obj.files.item(0).getAsDataURL();  
  19.        }  
  20.       return obj.value;  
  21.      }  
  22.     return obj.value;  
  23.    }  
  24. }   


参数obj为input file对象

document.selection 介绍

document.selection 表示当前网页中的选中内容。

方法有:

    * clear 清除选中的内容
    * empty 取消选中
    * createRange 返回 TextRange 或 ControlRange 对象
    * createRangeCollection 不支持

属性有:

    * type 选中内容的类型
    * typeDetail 不支持

二、document.selection.createRange() 详细介绍

     document.selection.createRange() 根据当前文字选择返回 TextRange 对象,或根据控件选择返回ControlRange 对象。

配合 execCommand,在 HTML 编辑器中很有用,比如:文字加粗、斜体、复制、粘贴、创建超链接等。

例子:

XML/HTML代码
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">    
  2. <html xmlns="http://www.w3.org/1999/xhtml" >    
  3. <head>    
  4.     <title>document.selection 的 createRange</title>    
  5. </head>    
  6. <body>    
  7.     
  8.   <div>请选中这里的部分文字。</div>    
  9.   <div><input type="button" value="加粗" onclick="javascript:Bold();" /></div>    
  10. <script type="text/javascript" language="javascript">    
  11. <!--     
  12. function Bold()     
  13. {     
  14.      var r = document.selection.createRange();     
  15.      r.execCommand("Bold");     
  16. }     
  17. -->    
  18. </script>    
  19.     
  20. </body>    
  21. </html>  

Tags: ie8, fackpath

« 上一篇 | 下一篇 »

Trackbacks

点击获得Trackback地址,Encode: UTF-8 点击获得Trackback地址,Encode: GB2312 or GBK 点击获得Trackback地址,Encode: BIG5

发表评论

评论内容 (必填):