關於IE 中上傳圖片時用JavaScript預覽本地圖片的功能失效

來源:互聯網
上載者:User

最近做一個小項目時裡面有個用JavaScript預覽本地圖片的功能,但是我在IE中調試怎麼都不顯示.

用IE的開發人員工具(F12)對JavaScript進行調試監視path=C:/fakepath/Chrysanthemum.jpg

到了document.getElementById("myimg").src=path執行過後得到的路徑是file:///C:/fakepath/Chrysanthemum.jpg

於是在網上開始找解決方案,現在把找到的方案分享給大家!

原因是IE8增加了安全選項,預設情況下不顯示上傳檔案的真實路徑,進入internet選項,修改下設定即可顯示真實的檔案路徑。

操作如下:工具 -> Internet選項 -> 安全 -> 自訂層級 -> 找到“其他”中的“將本地檔案上傳至伺服器時包含本地目錄路徑”,選中“啟用”即可。

當然有些人會說,你總不能要求你的客戶也去做這些設定吧,所以還得找其他的解決方案

 1 <script type="text/javascript">
2 function getPath(obj) {
3 if (obj) {
4 if (window.navigator.userAgent.indexOf("MSIE") >= 1) {
5 obj.select(); return document.selection.createRange().text;
6 }
7 else if (window.navigator.userAgent.indexOf("Firefox") >= 1) {
8 if (obj.files) {
9 return obj.files.item(0).getAsDataURL();
10 }
11 return obj.value;
12 }
13 return obj.value;
14 }
15 }
16
17 //以下即為完整用戶端路徑
18 var filepath=getPath(document.getElementById("iptfileupload"));
19 </script>

上面這種方式就不用客戶修改了,大家可以試試,以上也是我網上找的資料,分享給大家,方便使用~~
 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.