createObjectURL方法實(shí)現(xiàn)本地圖片預(yù)覽
ie6 可以直接顯示本本地路徑的圖片 如: <img src="file://c:/3.jpg" /> ~~~網(wǎng)上都說ie7就不支持這種文件系統(tǒng)路徑的url,但測試 xp ie8還是可以的
ie8+ alphaImageLoader濾鏡方式加載本地路徑的圖片
chrome, firefox, 用dataUrl 或 createObjectURL方法實(shí)現(xiàn)
例子:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>get file input full path</title> <script type="text/javascript" language='javascript'> function getFullPath(obj) { var newPreview = document.getElementById("img"); if (obj) { //ie if (window.navigator.userAgent.indexOf("MSIE") >= 1) { obj.select(); newPreview.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale);"; newPreview.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = document.selection.createRange().text; return; } //firefox else if (window.navigator.userAgent.indexOf("Firefox") >= 1) { if (obj.files) { newPreview.src = window.URL.createObjectURL(obj.files.item(0)); return; } newPreview.src = obj.value; return; } newPreview.src = obj.value; return; } } </script> </head> <body> <input type="file" onchange="getFullPath(this);" /> <img id="img" alt="" style="width:200px; height:200px;" src="你自己的透明圖片"/> </body> </html>
然后 我們來看看 window.URL.createObjectURL() 到底是什么
window.URL.createObjectURL
概述
創(chuàng)建一個(gè)新的對(duì)象URL,該對(duì)象URL可以代表某一個(gè)指定的File對(duì)象或Blob對(duì)象.
語法
objectURL = window.URL.createObjectURL(blob);
- blob參數(shù)是一個(gè)File對(duì)象或者Blob對(duì)象.
- objectURL是生成的對(duì)象URL.通過這個(gè)URL,可以獲取到所指定文件的完整內(nèi)容.
示例
附注
在每次調(diào)用createObjectURL()方 法的時(shí)候,都會(huì)創(chuàng)建一個(gè)新的對(duì)象URL,即使參數(shù)中的這個(gè)對(duì)象已經(jīng)有了自己的對(duì)象URL.在你不需要這些對(duì)象URL的時(shí)候,你應(yīng)該通過調(diào)用 window.URL.revokeObjectURL()方法來釋放它們所占用的內(nèi)容.雖然即使你不主動(dòng)釋放它們,瀏覽 器也會(huì)在當(dāng)前文檔被卸載的時(shí)候替你釋放,不過,考慮到更好的性能和更少的內(nèi)存占用,你應(yīng)該在安全的時(shí)候主動(dòng)施放它們.
瀏覽器兼容性
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- JS中比較兩個(gè)Object數(shù)組是否相等方法實(shí)例
- Node.js使用MongoDB的ObjectId作為查詢條件的方法
- 使用django的objects.filter()方法匹配多個(gè)關(guān)鍵字的方法
- JS數(shù)組Object.keys()方法的使用示例
- 微信小程序picker組件關(guān)于objectArray數(shù)據(jù)類型的綁定方法
- 淺談Java異常的Exception e中的egetMessage()和toString()方法的區(qū)別
- java中的 toString()方法實(shí)例代碼
- Object類toString()和equals()方法使用解析
相關(guān)文章
Web js實(shí)現(xiàn)復(fù)制文本到粘貼板
這篇文章主要為大家詳細(xì)介紹了Web js實(shí)現(xiàn)復(fù)制文本到粘貼板,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-08-08js實(shí)現(xiàn)兼容PC端和移動(dòng)端滑塊拖動(dòng)選擇數(shù)字效果
這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)兼容PC端和移動(dòng)端滑塊拖動(dòng)選擇數(shù)字的效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-02-02js 替換功能函數(shù),用正則表達(dá)式解決,js的全部替換
js 替換功能函數(shù),用正則表達(dá)式解決,js的全部替換,學(xué)習(xí)js的朋友可以參考下。2010-12-12js中flexible.js實(shí)現(xiàn)淘寶彈性布局方案
這篇文章主要為大家詳細(xì)介紹了js中flexible.js實(shí)現(xiàn)淘寶彈性布局方案,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2015-12-12javascript實(shí)現(xiàn)簡單頁面倒計(jì)時(shí)
這篇文章主要為大家詳細(xì)介紹了javascript實(shí)現(xiàn)簡單頁面倒計(jì)時(shí),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-03-03jacascript DOM節(jié)點(diǎn)——元素節(jié)點(diǎn)、屬性節(jié)點(diǎn)、文本節(jié)點(diǎn)
這篇文章主要介紹了jacascript DOM節(jié)點(diǎn)——元素節(jié)點(diǎn)、屬性節(jié)點(diǎn)、文本節(jié)點(diǎn),需要的朋友可以參考下2017-04-04JS localStorage實(shí)現(xiàn)本地緩存的方法
JS localStorage實(shí)現(xiàn)本地緩存的方法,需要的朋友可以參考一下2013-06-06