aboutsummaryrefslogtreecommitdiff
path: root/files/zh-cn/mozilla/add-ons/webextensions/api/downloads/index.html
blob: a2074471b7a9d748d60f95099bd3fbf9fcf81cb0 (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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
---
title: downloads
slug: Mozilla/Add-ons/WebExtensions/API/downloads
tags:
  - API
  - Add-ons
  - Extensions
  - Interface
  - NeedsTranslation
  - Non-standard
  - Reference
  - TopicStub
  - WebExtensions
  - downloads
translation_of: Mozilla/Add-ons/WebExtensions/API/downloads
---
<div>{{AddonSidebar}}</div>

<div>启用与浏览器的下载管理器交互的扩展。你可以使用这个 API 模块来下载文件、取消、暂停、恢复下载和在文件管理器中显示下载的文件。</div>

<p>为使用此 API,你需要在你的 <a href="https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json">manifest.json</a> 文件中声明 "downloads" <a href="/en-US/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">API 权限</a></p>

<h2 id="Types">Types</h2>

<dl>
 <dt>{{WebExtAPIRef("downloads.FilenameConflictAction")}}</dt>
 <dd>定义当一个下载的文件与现存的文件命名冲突时要做什么。</dd>
 <dt>{{WebExtAPIRef("downloads.InterruptReason")}}</dt>
 <dd>定义一系列中断下载的可能理由。</dd>
 <dt>{{WebExtAPIRef("downloads.DangerType")}}</dt>
 <dd><span class="tlid-translation translation" lang="zh-CN"><span title="">定义一组与可下载文件相关的潜在危险的常见警告。</span></span></dd>
 <dt>{{WebExtAPIRef("downloads.State")}}</dt>
 <dd><span class="tlid-translation translation" lang="zh-CN"><span title="">定义当前下载可能处于的不同状态。</span></span></dd>
 <dt>{{WebExtAPIRef("downloads.DownloadItem")}}</dt>
 <dd>代表下载的文件。</dd>
 <dt>{{WebExtAPIRef("downloads.StringDelta")}}</dt>
 <dd><span class="tlid-translation translation" lang="zh-CN"><span title="">表示两个字符串之间的差异。</span></span></dd>
 <dt>{{WebExtAPIRef("downloads.DoubleDelta")}}</dt>
 <dd>代表两个双精度浮点数之间的差异。</dd>
 <dt>{{WebExtAPIRef("downloads.BooleanDelta")}}</dt>
 <dd>代表两个布尔数之间的差异。</dd>
 <dt>{{WebExtAPIRef("downloads.DownloadTime")}}</dt>
 <dd>代表一个下载将会花费的时间。</dd>
 <dt>{{WebExtAPIRef("downloads.DownloadQuery")}}</dt>
 <dd><span class="tlid-translation translation" lang="zh-CN"><span title="">定义一组参数,可用于在下载管理器中搜索一组特定的下载。</span></span></dd>
</dl>

<h2 id="Functions">Functions</h2>

<dl>
 <dt>{{WebExtAPIRef("downloads.download()")}}</dt>
 <dd>下载一个文件,给出它的 URL 和其他可选的参数。</dd>
 <dt>{{WebExtAPIRef("downloads.search()")}}</dt>
 <dd>查询 {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} 是否在浏览器的下载管理器中可用,返回匹配指定的搜索标准的条目。</dd>
 <dt>{{WebExtAPIRef("downloads.pause()")}}</dt>
 <dd>暂停一个下载。</dd>
 <dt>{{WebExtAPIRef("downloads.resume()")}}</dt>
 <dd>恢复一个暂停的下载。</dd>
 <dt>{{WebExtAPIRef("downloads.cancel()")}}</dt>
 <dd>取消一个下载。</dd>
 <dt>{{WebExtAPIRef("downloads.getFileIcon()")}}</dt>
 <dd><span class="tlid-translation translation" lang="zh-CN"><span title="">检索指定下载的图标。</span></span></dd>
 <dt>{{WebExtAPIRef("downloads.open()")}}</dt>
 <dd>用下载的文件相关联的程序打开它。</dd>
 <dt>{{WebExtAPIRef("downloads.show()")}}</dt>
 <dd>打开当前平台的文件管理应用来在它包含的文件夹中显示下载的文件。</dd>
 <dt>{{WebExtAPIRef("downloads.showDefaultFolder()")}}</dt>
 <dd>用当前平台的文件管理应用显示默认下载文件夹。</dd>
 <dt>{{WebExtAPIRef("downloads.erase()")}}</dt>
 <dd>擦除浏览器的下载历史中匹配 {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} 的下载记录,不会在磁盘中删除文件。</dd>
 <dt>{{WebExtAPIRef("downloads.removeFile()")}}</dt>
 <dd>从磁盘中移除下载的文件,但不从浏览器的下载历史中去除。</dd>
 <dt>{{WebExtAPIRef("downloads.acceptDanger()")}}</dt>
 <dd><span class="tlid-translation translation" lang="zh-CN"><span title="">提示用户接受或取消危险的下载。</span></span></dd>
 <dt>{{WebExtAPIRef("downloads.drag()")}}</dt>
 <dd>   <span class="tlid-translation translation" lang="zh-CN"><span title="">将下载的文件拖动到另一个应用程序。</span></span></dd>
 <dt>{{WebExtAPIRef("downloads.setShelfEnabled()")}}</dt>
 <dd><span class="tlid-translation translation" lang="zh-CN"><span title="">启用或禁用与当前浏览器配置文件关联的每个窗口底部的灰色架子。</span> <span title="">只要至少一个扩展名已禁用该架子,它就会被禁用。</span></span></dd>
</dl>

<h2 id="Events">Events</h2>

<dl>
 <dt>{{WebExtAPIRef("downloads.onCreated")}}</dt>
 <dd>当一个下载开始时被 {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} 对象触发。</dd>
 <dt>{{WebExtAPIRef("downloads.onErased")}}</dt>
 <dd>当一个下载从历史中擦除时被 Fires with the <code>downloadId</code> 触发。</dd>
 <dt>{{WebExtAPIRef("downloads.onChanged")}}</dt>
 <dd>当任意一个 {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} 的属性期望 <code>bytesReceived</code> 改变时,此事件被这个 `downloadId` 和包含了变化属性的对象触发。</dd>
</dl>

<h2 id="Browser_compatibility">Browser compatibility</h2>

<p>{{Compat("webextensions.api.downloads")}}</p>

<p>{{WebExtExamples("h2")}}</p>

<div class="note"><strong>Acknowledgements</strong>

<p>This API is based on Chromium's <a href="https://developer.chrome.com/extensions/downloads"><code>chrome.downloads</code></a> API.</p>

<p>Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.</p>
</div>

<div class="hidden">
<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
//    * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
//    * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//    * Neither the name of Google Inc. nor the names of its
// contributors may be used to endorse or promote products derived from
// this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
</pre>
</div>