aboutsummaryrefslogtreecommitdiff
path: root/files/zh-cn/web/api/file/getasdataurl/index.html
blob: 7f72b124d076e98d871919d69cac0002e09159d2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
---
title: File.getAsDataURL()
slug: Web/API/File/getAsDataURL
translation_of: Web/API/File/getAsDataURL
---
<div>{{APIRef("File API") }}</div>

<p>{{non-standard_header}}</p>

<p>{{deprecated_header(7.0)}}</p>

<h2 id="概述">概述</h2>

<p>getAsDataURL<code>函数返回一个形如 </code><a href="/en-US/docs/data_URIs"><code>data:</code></a> 的 URL,这个URL包含了所涉及到的内容的编码形式。</p>

<div class="note">
<p><strong>注:</strong> 这个方法已经废弃,你应该使用 {{domxref("FileReader")}} 对象中的{{domxref("FileReader.readAsDataURL","readAsDataURL()")}} 方法作为替代。</p>
</div>

<h2 id="语法">语法</h2>

<pre>var url = <em>instanceOfFile</em>.getAsDataURL();</pre>

<h3 id="返回值">返回值</h3>

<p>一个形如 <a href="/en-US/docs/data_URIs"><code>data:</code></a> 的URL字符串</p>

<h2 id="范例">范例</h2>

<pre class="brush: js">// fileInput 是一个 HTMLInputElement 元素: &lt;input type="file" id="myfileinput" multiple&gt;
var fileInput = document.getElementById("myfileinput");

// files 是一个 FileList 对象(类似 NodeList 对象)
var files = fileInput.files;

// 允许的文件格式数组
var accept = ["image/png"];

// img 是一个 HTMLImgElement 元素: &lt;img id="myimg"&gt;
var img = document.getElementById("myimg");

// 假设我们接收第一个所选中的文件类型
if (accept.indexOf(files[0].mediaType) &gt; -1) {
  // 显示图片
  // 和 &lt;img src="data:image/png,&lt;imagedata&gt;"&gt; 效果一样
  img.src = files[0].getAsDataURL();
}
</pre>

<h2 id="详细说明">详细说明</h2>

<p>没有其他说明</p>

<h2 id="参考文章">参考文章</h2>

<ul>
 <li>{{domxref("File")}}</li>
 <li>{{domxref("FileReader")}}</li>
</ul>