2 回答

TA貢獻1824條經驗 獲得超5個贊
我能想到三條線索:
用HTML5的File API,Mozilla有個例子,雖然不是所有瀏覽器都支持,但我推薦這個方案,反正這些懶得去找一款好用的瀏覽器的人,也不會在乎你有沒有這個預覽功能。
可用性最廣泛的辦法是選擇了圖片后,就把圖片用個ajax請求上傳到服務器,生成縮略圖,取回來顯示,但如果你的圖片很大,那就沒轍了,這樣的接口也容易被人用來攻擊你的服務器。
再不然就是用flash了,如果用戶瀏覽器的安全選項允許,可以直接操作本地的圖片。

TA貢獻1820條經驗 獲得超2個贊
由于安全性的原因,從ie8以上的瀏覽器就封閉了這個接口,所以返回來的都是fakepath這樣的路徑,你如果想實現在線預覽的話,可以使用HTML5新增的File API來實現,具體的寫法你可以這樣
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script>
window.onload=function(){
var file=document.getElementById("file")
file.onchange=function(){
var img=document.createElement("img")
img.src=window.URL.createObjectURL(file.files[0])
img.onload=function(){
window.URL.revokeObjectURL(this.src)
}
document.body.appendChild(img)
}
}
</script>
</head>
<body>
<input type="file" id="file"/>
</body>
</html>
添加回答
舉報