頁面有乙個input file伺服器控制項,乙個div,div是image標籤的容器,當點選input file的值改變,我們往div裡追加image標籤;
但當通過js的onchange事件動態獲取input file 的路徑的時候,發現console.log(path)列印出的路徑是被瀏覽器遮蔽的,例如:c:\fakepath\file.jpg
由於瀏覽器的安全機制,當我們獲取input file的路徑時被fakepath代替,隱藏了真實物理路徑。
當然,調整瀏覽器的瀏覽器安全設定可以解決這個問題,但是這種解決辦法顯然不是我們想要的,不可能讓每個用於都去設定瀏覽器安全選項。
url.createobjecturl()方法會根據傳入的引數建立乙個指向該引數物件的url,這個url的生命僅存在於它被建立的這個文件裡,新的物件url指向執行的file物件或blob物件。
語法:objceturl = window.url.createobjecturl(file || blob);
引數:file物件和blob物件;file物件就是乙個檔案,比如我用file type=」file」標籤來上傳檔案,那麼裡面的每個檔案都是乙個file物件。blob物件就是二進位制資料,比如在xmlhttprequest裡,如果指定requesttype為blob,那麼得到的返回值也是乙個blob物件。
每次呼叫createobjecturl的時候,乙個新的url物件就被建立了。即使你已經為同乙個檔案建立過乙個url.,如果你不再需要這個物件,要釋放它,需要使用url.revokeobjecturl()方法.。當頁面被關閉,瀏覽器會自動釋放它,但是為了最佳效能和記憶體使用,當確保不再用得到它的時候,就應該釋放它。
<img
src=""
/>
<
input
type
="file"
name
="file1"
id="file1"
/>
<
button
>點我
button
>
<
script
>
function
getobjecturl(file)
else
if(window.url
!=undefined)
else
if(window.webkiturl
!=undefined)
return
url;
}//使用方法$("
#file1
").change(
function
());
script
>
JS基礎 輸入框獲取焦點
我是第一種方式 我是第一種方式 我是第二種方式 我是第二種方式 我是 賬號 京東 var taobao document.getelementbyid taobao var first document.getelementbyid first var second document.getelem...
原生js獲取單選 輸入框資訊
一 表單輸入框與單選值獲取 直接通過form中屬性name值獲取 lang en charset utf 8 name viewport content width device width,initial scale 1.0 documenttitle show style head name m...
JS輸入框校驗
想做姓名輸入的js判斷是否是中文,但是網上找的很多是源於一篇文章的,判斷中文的正則式不對,後來找到乙個可以準確判斷了,但是是監測裡面有中文的就行,跟我想要的只能輸入中文的意思相左,所以又找了下面的 js 控制文字框只能輸入數字 input nkeyup value value.replace 0 9...