From bf96f3043a8644ad7a724b5ebe91b69a631e3b77 Mon Sep 17 00:00:00 2001 From: 720 <71604450+T34-active@users.noreply.github.com> Date: Fri, 19 Jul 2024 16:10:12 +0800 Subject: [PATCH 001/521] [zh-cn]: update the translation of SpeechGrammar `SpeechGrammar()` constructor (#22485) --- .../api/speechgrammar/speechgrammar/index.md | 30 ++++++++++--------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/files/zh-cn/web/api/speechgrammar/speechgrammar/index.md b/files/zh-cn/web/api/speechgrammar/speechgrammar/index.md index 8d918465373412..619a378a29fae5 100644 --- a/files/zh-cn/web/api/speechgrammar/speechgrammar/index.md +++ b/files/zh-cn/web/api/speechgrammar/speechgrammar/index.md @@ -1,39 +1,41 @@ --- -title: SpeechGrammar.SpeechGrammar() +title: SpeechGrammar:SpeechGrammar() 构造函数 slug: Web/API/SpeechGrammar/SpeechGrammar +l10n: + sourceCommit: f2f9346c0c0e9f6676f2df9f1850933e274401de --- -{{APIRef("Web Speech API")}}{{SeeCompatTable}} +{{APIRef("Web Speech API")}}{{Non-standard_Header}}{{SeeCompatTable}} -**`SpeechGrammar`** 是 {{domxref("SpeechGrammar")}} 接口的构造函数,创建一个新的 `SpeechGrammar` 对象实例。 +{{domxref("SpeechGrammar")}} 接口的 **`SpeechGrammar()`** 构造函数创建一个新的 `SpeechGrammar` 对象实例。 ## 语法 -```plain -var mySpeechGrammar = new SpeechGrammar(); +```js-nolint +new SpeechGrammar() ``` -### Parameters +### 参数 无。 -## 样例 +## 示例 ```js -var grammar = +const grammar = "#JSGF V1.0; grammar colors; public = aqua | azure | beige | bisque | black | blue | brown | chocolate | coral | crimson | cyan | fuchsia | ghostwhite | gold | goldenrod | gray | green | indigo | ivory | khaki | lavender | lime | linen | magenta | maroon | moccasin | navy | olive | orange | orchid | peru | pink | plum | purple | red | salmon | sienna | silver | snow | tan | teal | thistle | tomato | turquoise | violet | white | yellow ;"; -var recognition = new SpeechRecognition(); -var speechRecognitionList = new SpeechGrammarList(); +const recognition = new SpeechRecognition(); +const speechRecognitionList = new SpeechGrammarList(); speechRecognitionList.addFromString(grammar, 1); recognition.grammars = speechRecognitionList; -var newGrammar = new SpeechGrammar(); +const newGrammar = new SpeechGrammar(); newGrammar.src = "#JSGF V1.0; grammar names; public = chris | kirsty | mike;"; -speechRecognitionList[1] = newGrammar; // 将 SpeechGrammar 对象添加到列表中 +speechRecognitionList[1] = newGrammar; // 应将新的 SpeechGrammar 对象添加到列表中。 ``` -## 规格 +## 规范 此 API 没有官方的 W3C 或 WHATWG 规范。 @@ -41,6 +43,6 @@ speechRecognitionList[1] = newGrammar; // 将 SpeechGrammar 对象添加到列 {{Compat}} -## 相关链接 +## 参见 - [Web Speech API](/zh-CN/docs/Web/API/Web_Speech_API) From 3e8255afeb4390c4fd055ccb4bf84e3a3903717d Mon Sep 17 00:00:00 2001 From: Tianyi Tao Date: Fri, 19 Jul 2024 16:15:18 +0800 Subject: [PATCH 002/521] [zh-cn]: update the translation of `CanvasRenderingContext2D.lineWidth` property (#21960) Co-authored-by: skyclouds2001 <95597335+skyclouds2001@users.noreply.github.com> Co-authored-by: A1lo --- .../linewidth/index.md | 35 ++++++------------- 1 file changed, 11 insertions(+), 24 deletions(-) diff --git a/files/zh-cn/web/api/canvasrenderingcontext2d/linewidth/index.md b/files/zh-cn/web/api/canvasrenderingcontext2d/linewidth/index.md index 61b4a3069e0310..22c1696616d681 100644 --- a/files/zh-cn/web/api/canvasrenderingcontext2d/linewidth/index.md +++ b/files/zh-cn/web/api/canvasrenderingcontext2d/linewidth/index.md @@ -1,24 +1,19 @@ --- -title: CanvasRenderingContext2D.lineWidth +title: CanvasRenderingContext2D:lineWidth 属性 slug: Web/API/CanvasRenderingContext2D/lineWidth +l10n: + sourceCommit: 1f216a70d94c3901c5767e6108a29daa48edc070 --- {{APIRef}} -The **`CanvasRenderingContext2D.lineWidth`** 是 Canvas 2D API 设置线段厚度的属性(即线段的宽度)。 +Canvas 2D API 的 **`CanvasRenderingContext2D.lineWidth`** 属性用于设置线宽。 -> **备注:** 线可以通过{{domxref("CanvasRenderingContext2D.stroke()", "stroke()")}}, {{domxref("CanvasRenderingContext2D.strokeRect()", "strokeRect()")}}, 和{{domxref("CanvasRenderingContext2D.strokeText()", "strokeText()")}} 方法绘制。 +> **备注:** 线可以通过 {{domxref("CanvasRenderingContext2D.stroke()", "stroke()")}}、{{domxref("CanvasRenderingContext2D.strokeRect()", "strokeRect()")}} 和 {{domxref("CanvasRenderingContext2D.strokeText()", "strokeText()")}} 方法绘制。 -## 语法 +## 值 -``` -ctx.lineWidth = value; -``` - -### 选项 - -- `value` - - : 描述线段宽度的数字。0、负数、 {{jsxref("Infinity")}} 和 {{jsxref("NaN")}} 会被忽略。 +一个数字,指定线条的宽度(以坐标空间单位表示)。零、负数、{{jsxref("Infinity")}} 和 {{jsxref("NaN")}} 值将被忽略。默认值为 `1.0`。 ## 示例 @@ -53,9 +48,9 @@ ctx.stroke(); ### 更多示例 -有关此属性的更多示例和说明,请参阅在“画布教程”中的[使用样式和颜色](/zh-CN/docs/Web/API/Canvas_API/Tutorial/Applying_styles_and_colors)。 +有关此属性的更多示例和说明,请参阅 [Canvas 教程](/zh-CN/docs/Web/API/Canvas_API/Tutorial)中的[应用样式和色彩](/zh-CN/docs/Web/API/Canvas_API/Tutorial/Applying_styles_and_colors)。 -## 规范描述 +## 规范 {{Specifications}} @@ -63,17 +58,9 @@ ctx.stroke(); {{Compat}} -### WebKit/Blink-specific 注解 - -- 在基于 WebKit- 和 Blink- 的浏览器中,除了此属性外,实现了一个不标准的并且不赞成使用的方法 `ctx.setLineWidth()` 。 - -### Gecko-specific 注解 - -- 从 Gecko 2.0 版本开始,设置`lineWidth` 为负数不再抛出异常,所有非正数值都会被忽略。 - ## 参见 -- 接口定义, {{domxref("CanvasRenderingContext2D")}} +- 定义此属性的接口:{{domxref("CanvasRenderingContext2D")}} - {{domxref("CanvasRenderingContext2D.lineCap")}} - {{domxref("CanvasRenderingContext2D.lineJoin")}} -- [使用样式和颜色](/zh-CN/docs/Web/API/Canvas_API/Tutorial/Applying_styles_and_colors) +- [应用样式和色彩](/zh-CN/docs/Web/API/Canvas_API/Tutorial/Applying_styles_and_colors) From 51db9298cfe1f1396f3951bf8903b692a45fdcd5 Mon Sep 17 00:00:00 2001 From: Tianyi Tao Date: Fri, 19 Jul 2024 16:19:26 +0800 Subject: [PATCH 003/521] [zh-cn]: update the translation of `CanvasRenderingContext2D.imageSmoothingQuality` property (#21955) Co-authored-by: skyclouds2001 <95597335+skyclouds2001@users.noreply.github.com> --- .../imagesmoothingquality/index.md | 30 +++++++++++-------- 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/files/zh-cn/web/api/canvasrenderingcontext2d/imagesmoothingquality/index.md b/files/zh-cn/web/api/canvasrenderingcontext2d/imagesmoothingquality/index.md index 2f4272e6fc5cee..6c25e7f0f184bc 100644 --- a/files/zh-cn/web/api/canvasrenderingcontext2d/imagesmoothingquality/index.md +++ b/files/zh-cn/web/api/canvasrenderingcontext2d/imagesmoothingquality/index.md @@ -1,23 +1,28 @@ --- -title: CanvasRenderingContext2D.imageSmoothingQuality +title: CanvasRenderingContext2D:imageSmoothingQuality 属性 slug: Web/API/CanvasRenderingContext2D/imageSmoothingQuality +l10n: + sourceCommit: d0d8f446ab0e7330a741fd8cbf1ecb8a2077d3f0 --- -{{APIRef}} {{SeeCompatTable}} +{{APIRef}} -**CanvasRenderingContext2D.imageSmoothingQuality** 是 Canvas 2D API,用于设置图像平滑度的属性。 +Canvas 2D API 的 {{domxref("CanvasRenderingContext2D")}} 接口的 **`imageSmoothingQuality`** 属性,用于设置图像平滑度。 -## 语法 +> **备注:** 要使此属性生效,{{domxref("CanvasRenderingContext2D.imageSmoothingEnabled", "imageSmoothingEnabled")}} 属性必须为 `true`。 -``` -ctx.imageSmoothingQuality = value -value = ctx.imageSmoothingQuality -``` +## 值 + +以下之一: -### 选项 +- `"low"` + - : 低质量。 +- `"medium"` + - : 中等质量。 +- `"high"` + - : 高质量。 -- `value` - - : "low","medium","high" +默认值为 `"low"`。 ## 示例 @@ -59,5 +64,6 @@ img.onload = () => { ## 参见 -- 接口定义,{{domxref("CanvasRenderingContext2D")}} +- 定义此属性的接口:{{domxref("CanvasRenderingContext2D")}} +- {{domxref("CanvasRenderingContext2D.imageSmoothingEnabled")}} - {{cssxref("image-rendering")}} From 8a3c3b8f800ad1888eee99da9e6ef45ed80d08fa Mon Sep 17 00:00:00 2001 From: Tianyi Tao Date: Fri, 19 Jul 2024 16:24:11 +0800 Subject: [PATCH 004/521] [zh-cn]: create the translation of `CanvasRenderingContex2D.letterSpacing` property (#21956) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: skyclouds2001 <95597335+skyclouds2001@users.noreply.github.com> Co-authored-by: A1lo --- .../letterspacing/index.md | 64 +++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 files/zh-cn/web/api/canvasrenderingcontext2d/letterspacing/index.md diff --git a/files/zh-cn/web/api/canvasrenderingcontext2d/letterspacing/index.md b/files/zh-cn/web/api/canvasrenderingcontext2d/letterspacing/index.md new file mode 100644 index 00000000000000..a1178cf8515cf5 --- /dev/null +++ b/files/zh-cn/web/api/canvasrenderingcontext2d/letterspacing/index.md @@ -0,0 +1,64 @@ +--- +title: CanvasRenderingContext2D:letterSpacing 属性 +slug: Web/API/CanvasRenderingContext2D/letterSpacing +l10n: + sourceCommit: 4d5e2c11f4b8cc32e54d2527d9576ed26ced9458 +--- + +{{APIRef}} + +Canvas API 的 **`CanvasRenderingContext2D.letterSpacing`** 属性用于指定绘制文本时字母之间的间距。 + +这对应于 CSS 中的 [`letter-spacing`](/zh-CN/docs/Web/CSS/letter-spacing) 属性。 + +## 值 + +`letterSpacing` 属性的值以 CSS 的 {{cssxref("length")}} 数据格式的字符串表示。默认值为 `0px`。 + +可以使用该属性来获取或设置间距。如果设置为无效或无法解析的值,属性值将保持不变。 + +## 示例 + +在这个示例中,我们三次显示文本“Hello World”,每次使用 `letterSpacing` 属性来修改字母间距。同时,还显示了每种情况下的间距值。 + +### HTML + +```html + +``` + +### JavaScript + +```js +const canvas = document.getElementById("canvas"); +const ctx = canvas.getContext("2d"); + +ctx.font = "30px serif"; + +// 默认字母间距 +ctx.fillText(`Hello world (默认:${ctx.letterSpacing})`, 10, 40); + +// 自定义字母间距:10px +ctx.letterSpacing = "10px"; +ctx.fillText(`Hello world (${ctx.letterSpacing})`, 10, 90); + +// 自定义字母间距:20px +ctx.letterSpacing = "20px"; +ctx.fillText(`Hello world (${ctx.letterSpacing})`, 10, 140); +``` + +### 结果 + +{{ EmbedLiveSample('示例', 700, 180) }} + +## 规范 + +{{Specifications}} + +## 浏览器兼容性 + +{{Compat}} + +## 参见 + +- {{domxref("CanvasRenderingContext2D.wordSpacing")}} From 008c13aaaad741da403b81986ea6d6198f80f7cb Mon Sep 17 00:00:00 2001 From: Tianyi Tao Date: Fri, 19 Jul 2024 16:45:02 +0800 Subject: [PATCH 005/521] [zh-cn]: update the translation of `CanvasRenderingContext2D.textAlign` property (#21974) Co-authored-by: A1lo --- .../textalign/index.md | 70 +++++++++++++------ 1 file changed, 47 insertions(+), 23 deletions(-) diff --git a/files/zh-cn/web/api/canvasrenderingcontext2d/textalign/index.md b/files/zh-cn/web/api/canvasrenderingcontext2d/textalign/index.md index 93ae9f990d2f44..fcf1e09118b2aa 100644 --- a/files/zh-cn/web/api/canvasrenderingcontext2d/textalign/index.md +++ b/files/zh-cn/web/api/canvasrenderingcontext2d/textalign/index.md @@ -1,44 +1,38 @@ --- -title: CanvasRenderingContext2D.textAlign +title: CanvasRenderingContext2D:textAlign 属性 slug: Web/API/CanvasRenderingContext2D/textAlign +l10n: + sourceCommit: 1f216a70d94c3901c5767e6108a29daa48edc070 --- {{APIRef}} -**`CanvasRenderingContext2D.textAlign`** 是 Canvas 2D API 描述绘制文本时,文本的对齐方式的属性。注意,该对齐是基于 CanvasRenderingContext2D.fillText 方法的 x 的值。所以如果 textAlign="center",那么该文本将画在 x-50%\*width。 +Canvas 2D API 的 **`CanvasRenderingContext2D.textAlign`** 属性用于描述绘制文本时文本的对齐方式。 -> 译者注:这里的 textAlign="center"比较特殊。textAlign 的值为 center 时候文本的居中是基于你在 fillText 的时候所给的 x 的值,也就是说文本一半在 x 的左边,一半在 x 的右边(可以理解为计算 x 的位置时从默认文字的左端,改为文字的中心,因此你只需要考虑 x 的位置即可)。所以,如果你想让文本在整个 canvas 居中,就需要将 fillText 的 x 值设置成 canvas 的宽度的一半。 +对齐是相对于 {{domxref("CanvasRenderingContext2D.fillText", "fillText()")}} 方法的 `x` 值的。例如,如果 `textAlign` 是 `"center"`,那么该文本的左侧边界会是 `x - (textWidth / 2)`。 -## 语法 +## 值 -``` -ctx.textAlign = "left" || "right" || "center" || "start" || "end"; -``` - -### 选项 - -有效值: +可能的值: -- left +- `"left"` - : 文本左对齐。 -- right +- `"right"` - : 文本右对齐。 -- center +- `"center"` - : 文本居中对齐。 -- start +- `"start"` - : 文本对齐界线开始的地方(左对齐指本地从左向右,右对齐指本地从右向左)。 -- end +- `"end"` - : 文本对齐界线结束的地方(左对齐指本地从左向右,右对齐指本地从右向左)。 -默认值是 `start`。 - -> 译者注:`direction` 属性会对此属性产生影响。如果 `direction` 属性设置为 `ltr`,则 left 和 `start` 的效果相同,`right` 和 end 的效果相同;如果 direction 属性设置为 `rtl`,则 `left` 和 `end` 的效果相同,`right` 和 `start` 的效果相同。 +默认值是 `"start"`。 ## 示例 -### 简单文本对齐 +### 一般文本对齐 -这是一段简单的代码片段,使用 `textAlign` 属性设置文本的不同对齐方式。 +这个例子演示了 `textAlign` 属性的三种“物理”值:`"left"`、`"center"` 和 `"right"`。 #### HTML @@ -73,7 +67,37 @@ ctx.fillText("right-aligned", x, 130); #### 结果 -{{ EmbedLiveSample('简单文本对齐', 700, 180) }} +{{ EmbedLiveSample('一般文本对齐', 700, 180) }} + +### 依赖方向的文本对齐 + +这个例子演示了 `textAlign` 属性的两个依赖方向的值:`"start"` 和 `"end"`。注意,虽然英语文本的默认方向是 `"ltr"`,但我们在这里手动指定了 {{domxref("CanvasRenderingContext2D.direction", "direction")}} 属性为 `"ltr"`。 + +#### HTML + +```html + +``` + +#### JavaScript + +```js +const canvas = document.getElementById("canvas"); +const ctx = canvas.getContext("2d"); + +ctx.font = "30px serif"; +ctx.direction = "ltr"; + +ctx.textAlign = "start"; +ctx.fillText("Start-aligned", 0, 50); + +ctx.textAlign = "end"; +ctx.fillText("End-aligned", canvas.width, 120); +``` + +#### 结果 + +{{ EmbedLiveSample('依赖方向的文本对齐', 700, 180) }} ## 规范 @@ -85,4 +109,4 @@ ctx.fillText("right-aligned", x, 130); ## 参见 -- 接口定义, {{domxref("CanvasRenderingContext2D")}}. +- 定义该属性的接口:{{domxref("CanvasRenderingContext2D")}} From 8836f7990f7efa798a16ff6ffdaa6d4dfdd72686 Mon Sep 17 00:00:00 2001 From: Tianyi Tao Date: Fri, 19 Jul 2024 16:48:14 +0800 Subject: [PATCH 006/521] [zh-cn]: create the translation of `tabs.connect()` method (#21780) Co-authored-by: A1lo --- .../webextensions/api/tabs/connect/index.md | 103 ++++++++++++++++++ 1 file changed, 103 insertions(+) create mode 100644 files/zh-cn/mozilla/add-ons/webextensions/api/tabs/connect/index.md diff --git a/files/zh-cn/mozilla/add-ons/webextensions/api/tabs/connect/index.md b/files/zh-cn/mozilla/add-ons/webextensions/api/tabs/connect/index.md new file mode 100644 index 00000000000000..bc3e9aae435253 --- /dev/null +++ b/files/zh-cn/mozilla/add-ons/webextensions/api/tabs/connect/index.md @@ -0,0 +1,103 @@ +--- +title: tabs.connect() +slug: Mozilla/Add-ons/WebExtensions/API/tabs/connect +l10n: + sourceCommit: 43e3ff826b7b755b05986c99ada75635c01c187c +--- + +{{AddonSidebar}} + +调用此函数来建立扩展的后台脚本(或其他特权脚本,如弹出窗口脚本或选项页脚本)与属于该扩展并正在指定标签中运行的任何内容脚本之间的连接。此函数返回一个 {{WebExtAPIRef("runtime.Port")}} 对象。 + +调用此函数后,将在任何属于此扩展并在指定标签中运行的内容脚本中触发 {{WebExtAPIRef('runtime.onConnect')}} 事件。事件监听器将会收到另一个 {{WebExtAPIRef("runtime.Port")}} 对象。两侧可以使用 `Port` 对象来交换消息。 + +有关详细信息,请参阅[基于连接的消息传递](/zh-CN/docs/Mozilla/Add-ons/WebExtensions/Content_scripts#基于连接的消息传递)。你可以在不创建连接的情况下发送消息。关于如何选择这两种选项,请参阅[选择一次性消息和基于连接的消息传递之间的区别](/zh-CN/docs/Mozilla/Add-ons/WebExtensions/Content_scripts#选择一次性消息和基于连接的消息传递之间的区别)。 + +```js-nolint +browser.tabs.connect( + tabId, // 整数 + connectInfo // 可选的对象 +) +``` + +### 参数 + +- `tabId` + - : `integer`。要连接到其内容脚本的标签页的 ID。 +- `connectInfo` {{optional_inline}} + + - : 包含以下属性的对象: + + - `name` {{optional_inline}} + - : `string`。将传递给属于此扩展并在指定标签页中运行的内容脚本的 {{WebExtAPIRef("runtime.onConnect")}} 事件监听器。 + - `frameId` {{optional_inline}} + - : `integer`。打开由 `frameId` 指定的特定框架的端口,而不是标签页中的所有框架。 + +### 返回值 + +{{WebExtAPIRef('runtime.Port')}}。一个可以用于与运行在指定标签页中的内容脚本进行通信的端口。 + +## 示例 + +在此示例中,后台脚本监听[浏览器操作](/zh-CN/docs/Mozilla/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#browser_actions_2)的点击事件,然后连接到当前活动的标签页,并通过从 `connect()` 返回的 `Port` 发送消息: + +```js +function connectToTab(tabs) { + if (tabs.length > 0) { + let examplePort = browser.tabs.connect(tabs[0].id, { + name: "tabs-connect-example", + }); + examplePort.postMessage({ greeting: "来自后台脚本的问候" }); + } +} + +function onError(error) { + console.log(`发生错误:${error}`); +} + +browser.browserAction.onClicked.addListener(() => { + let gettingActive = browser.tabs.query({ + currentWindow: true, + active: true, + }); + gettingActive.then(connectToTab, onError); +}); +``` + +{{WebExtExamples}} + +## 浏览器兼容性 + +{{Compat}} + +> **备注:** 此 API 基于 Chromium 的 [`chrome.tabs`](https://developer.chrome.com/docs/extensions/reference/tabs/#method-connect) API。本文档内容源自 Chromium 代码中的 [`tabs.json`](https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json)。 + + From 59db55c4f3ea3e80a54226c69fc48c04aed50206 Mon Sep 17 00:00:00 2001 From: Hoarfroster Date: Fri, 19 Jul 2024 16:50:22 +0800 Subject: [PATCH 007/521] zh-CN: update Glossary/WebExtensions (#22292) --- files/zh-cn/glossary/webextensions/index.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/files/zh-cn/glossary/webextensions/index.md b/files/zh-cn/glossary/webextensions/index.md index ef6de9723c4f23..837fb8f86b22f3 100644 --- a/files/zh-cn/glossary/webextensions/index.md +++ b/files/zh-cn/glossary/webextensions/index.md @@ -1,12 +1,14 @@ --- title: 浏览器扩展 slug: Glossary/WebExtensions +l10n: + sourceCommit: ada5fa5ef15eadd44b549ecf906423b4a2092f34 --- {{GlossarySidebar}} -浏览器扩展是一种跨浏览器系统,用于开发 Firefox 的浏览器扩展。这个系统能够提供许多 API,在很大程度上能够被不同的浏览器所支持,例如 Mozilla Firefox,Google Chrome,Opera 浏览器,微软 Edge 和 Apple Safari 浏览器。 +浏览器扩展是一种用于开发 Firefox 的浏览器扩展的跨浏览器系统,能够提供许多 API。这些 API 在很大程度上能够被不同的浏览器所支持,例如 Mozilla Firefox、Google Chrome、Opera 浏览器、Microsoft Edge 和 Apple Safari。 ## 参见 -- MDN 上的 [浏览器扩展](/zh-CN/docs/Mozilla/Add-ons/WebExtensions)。 +- MDN 上的[浏览器扩展](/zh-CN/docs/Mozilla/Add-ons/WebExtensions)。 From e464daab2015ddc9a48a6b3c04c06955863a8cd9 Mon Sep 17 00:00:00 2001 From: 720 <71604450+T34-active@users.noreply.github.com> Date: Fri, 19 Jul 2024 17:14:29 +0800 Subject: [PATCH 008/521] [zh-cn]: update the translation of SpeechGrammar `weight` property (#22486) --- .../web/api/speechgrammar/weight/index.md | 30 ++++++++----------- 1 file changed, 13 insertions(+), 17 deletions(-) diff --git a/files/zh-cn/web/api/speechgrammar/weight/index.md b/files/zh-cn/web/api/speechgrammar/weight/index.md index 33adbb1652cce1..e2a2144fcbe615 100644 --- a/files/zh-cn/web/api/speechgrammar/weight/index.md +++ b/files/zh-cn/web/api/speechgrammar/weight/index.md @@ -1,34 +1,30 @@ --- -title: SpeechGrammar.weight +title: SpeechGrammar:weight 属性 slug: Web/API/SpeechGrammar/weight +l10n: + sourceCommit: 23e1a97d50050a3b3518a4b2f67ccf42e5fd75b7 --- {{APIRef("Web Speech API")}}{{SeeCompatTable}} -{{domxref("SpeechGrammar")}} 接口的可选属性 **`weight`** 设置并返回了一个 `SpeechGrammar` 对象的权重。 +{{domxref("SpeechGrammar")}} 接口的 **`weight`** 可选属性用于设置和返回 `SpeechGrammar` 对象的权重。 -## 语法 +## 值 -```plain -var myGrammarWeight = speechGrammarInstance.weight; -``` - -### 值 - -浮点数表示了当前文法的权重,范围在 0.0-1.0 之间。 +表示语法权重的浮点数,范围为 0.0 到 1.0。 -## 样例 +## 示例 ```js -var grammar = +const grammar = "#JSGF V1.0; grammar colors; public = aqua | azure | beige | bisque | black | blue | brown | chocolate | coral | crimson | cyan | fuchsia | ghostwhite | gold | goldenrod | gray | green | indigo | ivory | khaki | lavender | lime | linen | magenta | maroon | moccasin | navy | olive | orange | orchid | peru | pink | plum | purple | red | salmon | sienna | silver | snow | tan | teal | thistle | tomato | turquoise | violet | white | yellow ;"; -var recognition = new SpeechRecognition(); -var speechRecognitionList = new SpeechGrammarList(); +const recognition = new SpeechRecognition(); +const speechRecognitionList = new SpeechGrammarList(); speechRecognitionList.addFromString(grammar, 1); recognition.grammars = speechRecognitionList; -console.log(speechRecognitionList[0].src); // 应该返回和上面文法变量一样的内容 -console.log(speechRecognitionList[0].weight); // 应该返回 1 - 与上面第四行所设置的权重一致 +console.log(speechRecognitionList[0].src); // 返回值应与语法变量的内容相同 +console.log(speechRecognitionList[0].weight); // 应返回 1——与 addFromString 中设置的权重相同。 ``` ## 规范 @@ -39,6 +35,6 @@ console.log(speechRecognitionList[0].weight); // 应该返回 1 - 与上面第 {{Compat}} -## 相关链接 +## 参见 - [Web Speech API](/zh-CN/docs/Web/API/Web_Speech_API) From 0b3f8ea71d9b4d30d52377a1f17cd7e23241a919 Mon Sep 17 00:00:00 2001 From: Hoarfroster Date: Fri, 19 Jul 2024 18:59:04 +0800 Subject: [PATCH 009/521] zh-CN: create Glossary/Synthetic_monitoring (#22230) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: A1lo --- .../glossary/synthetic_monitoring/index.md | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 files/zh-cn/glossary/synthetic_monitoring/index.md diff --git a/files/zh-cn/glossary/synthetic_monitoring/index.md b/files/zh-cn/glossary/synthetic_monitoring/index.md new file mode 100644 index 00000000000000..bfcc6cef876bea --- /dev/null +++ b/files/zh-cn/glossary/synthetic_monitoring/index.md @@ -0,0 +1,22 @@ +--- +title: 模拟监控 +slug: Glossary/Synthetic_monitoring +l10n: + sourceCommit: ada5fa5ef15eadd44b549ecf906423b4a2092f34 +--- + +{{GlossarySidebar}} + +**模拟监控**包含在“实验室”环境中监控页面的性能的行为。这通常在尽可能一致的环境中使用自动化工具进行。 + +通过一致的基准,模拟监控非常适合测量代码更改对性能的影响。然而,它并不一定反映用户的实际体验。 + +模拟监控涉及部署脚本来模拟最终用户可能在 Web 应用程序中执行的路径,并报告模拟器体验的性能。流行的模拟监控工具示例包括 [WebPageTest](https://webpagetest.org) 和 [Lighthouse](https://developer.chrome.google.cn/docs/lighthouse/overview/)。测量的流量不是实际用户的流量,而是为收集页面性能数据而综合生成的流量。 + +与{{glossary("Real user monitoring", "真实用户监控")}}(RUM)不同,模拟监控提供了一个狭窄的性能视图,不考虑用户差异,使其在获取应用程序性能的基本数据和在开发环境中进行性能抽查方面非常有用。结合其他工具,如网络限制,可以提供对潜在问题区域的极好见解。 + +## 参见 + +- {{glossary("Real user monitoring", "真实用户监控")}}(RUM) +- [真实用户监控(RUM)vs. 模拟监控](/zh-CN/docs/Web/Performance/Rum-vs-Synthetic) +- {{glossary("Beacon", "信标")}} From c2c67f2d60e470b7413d6dcd4ebfee61ea431a9f Mon Sep 17 00:00:00 2001 From: Hoarfroster Date: Fri, 19 Jul 2024 18:59:35 +0800 Subject: [PATCH 010/521] zh-CN: create Glossary/WebIDL (#22233) --- files/zh-cn/glossary/webidl/index.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 files/zh-cn/glossary/webidl/index.md diff --git a/files/zh-cn/glossary/webidl/index.md b/files/zh-cn/glossary/webidl/index.md new file mode 100644 index 00000000000000..90ea946b72d7df --- /dev/null +++ b/files/zh-cn/glossary/webidl/index.md @@ -0,0 +1,19 @@ +--- +title: WebIDL +slug: Glossary/WebIDL +l10n: + sourceCommit: e099e74fe5c09c46f0dfe044894692721a713d29 +--- + +{{GlossarySidebar}} + +**WebIDL** 是用于描述 Web 应用程序编程接口({{Glossary("API")}})的{{Glossary("type", "数据类型")}}、{{Glossary("interface", "接口")}}、{{Glossary("method", "方法")}}、{{Glossary("property", "属性")}}等组成部分的接口描述语言。它使用一种略微风格化的语法,独立于任何特定的编程语言,因此可以使用最合适的语言编写构建每个 API 的底层代码,同时仍然可以将 API 的组件映射到与 JavaScript 兼容的构造。 + +WebIDL 几乎用于 Web 的每个 API {{Glossary("specification", "规范")}},由于其标准格式和语法,创建 Web 浏览器的程序员可以更容易地确保他们的浏览器彼此兼容,而不管他们选择如何编写实现 API 的代码。 + +## 参见 + +- [规范](https://webidl.spec.whatwg.org/) +- [WebIDL 文件中包含的信息](/zh-CN/docs/MDN/Writing_guidelines/Howto/Write_an_api_reference/Information_contained_in_a_WebIDL_file) +- [Gecko WebIDL 绑定](https://firefox-source-docs.mozilla.org/dom/webIdlBindings/index.html) +- [WebIDL](https://en.wikipedia.org/wiki/WebIDL) From eec9106887d4023399bee842471cc4ece688dd47 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 19 Jul 2024 11:46:19 +0000 Subject: [PATCH 011/521] build(deps): bump husky from 9.0.11 to 9.1.1 (#22491) --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 80ec5620b2b856..5f62168d97c1f1 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,7 @@ "cld": "^2.9.1", "fdir": "^6.1.1", "front-matter": "^4.0.2", - "husky": "9.0.11", + "husky": "9.1.1", "lint-staged": "15.2.7", "markdown-it": "^14.1.0", "markdownlint-cli2": "0.13.0", diff --git a/yarn.lock b/yarn.lock index 3208a612a41a1e..4f4eab32caf584 100644 --- a/yarn.lock +++ b/yarn.lock @@ -411,10 +411,10 @@ human-signals@^5.0.0: resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-5.0.0.tgz#42665a284f9ae0dade3ba41ebc37eb4b852f3a28" integrity sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ== -husky@9.0.11: - version "9.0.11" - resolved "https://registry.yarnpkg.com/husky/-/husky-9.0.11.tgz#fc91df4c756050de41b3e478b2158b87c1e79af9" - integrity sha512-AB6lFlbwwyIqMdHYhwPe+kjOC3Oc5P3nThEoW/AaO2BX3vJDjWPFxYLxokUZOo6RNX20He3AaT8sESs9NJcmEw== +husky@9.1.1: + version "9.1.1" + resolved "https://registry.yarnpkg.com/husky/-/husky-9.1.1.tgz#73f8f1b58329f377654293148c1a6458f54ca224" + integrity sha512-fCqlqLXcBnXa/TJXmT93/A36tJsjdJkibQ1MuIiFyCCYUlpYpIaj2mv1w+3KR6Rzu1IC3slFTje5f6DUp2A2rg== ignore@^5.2.4: version "5.2.4" From a8d45c604eb38e17a16c4f9c9075c4290a902bc7 Mon Sep 17 00:00:00 2001 From: Leonid Vinogradov Date: Sat, 20 Jul 2024 01:00:53 +0300 Subject: [PATCH 012/521] [ru] Unify links to Mozilla Firefox source code (#22123) [ru] use searchfox.org instead of obsolete dxr.mozilla.org and hg.mozilla.org --- .../learn/javascript/building_blocks/event_bubbling/index.md | 4 ++-- files/ru/web/http/headers/strict-transport-security/index.md | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/files/ru/learn/javascript/building_blocks/event_bubbling/index.md b/files/ru/learn/javascript/building_blocks/event_bubbling/index.md index 9c386ffe105db3..b27076fe163340 100644 --- a/files/ru/learn/javascript/building_blocks/event_bubbling/index.md +++ b/files/ru/learn/javascript/building_blocks/event_bubbling/index.md @@ -84,7 +84,7 @@ original_slug: Web/API/Event/Comparison_of_Event_Targets > - Event.webidl + Event.webidl {{ Non-standard_inline() }} Если по какой-либо причине событие @@ -107,7 +107,7 @@ original_slug: Web/API/Event/Comparison_of_Event_Targets > - Event.webidl + Event.webidl {{ Non-standard_inline() }} Первоначальная цель события перед diff --git a/files/ru/web/http/headers/strict-transport-security/index.md b/files/ru/web/http/headers/strict-transport-security/index.md index 15de6f3d6764a6..d3df8e69987fbd 100644 --- a/files/ru/web/http/headers/strict-transport-security/index.md +++ b/files/ru/web/http/headers/strict-transport-security/index.md @@ -64,7 +64,7 @@ Strict Transport Security разрешает эту проблему; пока Google поддерживает [HSTS preload service](https://hstspreload.org/). Следуя инструкциям и удачно отправив свой домен, браузер никогда не подключится к вашему домену через незащищённое соединение. Так как сервис хостится Google, все браузеры должны изъявить о намерении использовать (или на самом деле начать пользоваться) предзагруженным списком. Однако, это не часть HSTS спецификации и не должно считаться официальным. - Информация о списке HSTS предзагрузки в Chrome : -- Консультация о списке HSTS предзагрузки от Firefox: [nsSTSPreloadList.inc](https://hg.mozilla.org/mozilla-central/raw-file/tip/security/manager/ssl/nsSTSPreloadList.inc) +- Реализация списка HSTS предзагрузки в Firefox: [nsSTSPreloadList.inc](https://searchfox.org/mozilla-central/source/security/manager/ssl/nsSTSPreloadList.inc) ## Пример From c7a9bf1222c9e32dc77adaa5ec142ac854b521c5 Mon Sep 17 00:00:00 2001 From: yuqqs <175424616+yuqqs@users.noreply.github.com> Date: Sat, 20 Jul 2024 13:24:57 +0900 Subject: [PATCH 013/521] ja: fixed response body and safety of HTTP TRACE method (#22381) --- files/ja/web/http/methods/trace/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/files/ja/web/http/methods/trace/index.md b/files/ja/web/http/methods/trace/index.md index 3af787c717096c..b2c6ef15e70049 100644 --- a/files/ja/web/http/methods/trace/index.md +++ b/files/ja/web/http/methods/trace/index.md @@ -17,11 +17,11 @@ slug: Web/HTTP/Methods/TRACE 成功時のレスポンスの本文 - なし + あり {{Glossary("Safe/HTTP", "安全性")}} - なし + あり {{Glossary("Idempotent", "べき等性")}} From 45c4309d12be274b2b8336b9885e53c507e39b30 Mon Sep 17 00:00:00 2001 From: Masahiro FUJIMOTO Date: Sat, 20 Jul 2024 14:56:20 +0900 Subject: [PATCH 014/521] =?UTF-8?q?Web/API/Element/ariaColIndexText=20?= =?UTF-8?q?=E4=BB=961=E4=BB=B6=E3=82=92=E6=96=B0=E8=A6=8F=E7=BF=BB?= =?UTF-8?q?=E8=A8=B3=20(#22409)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 2023/11/16 時点の英語版に基づき新規翻訳 * Update files/ja/web/api/element/ariarowindextext/index.md Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .../web/api/element/ariacolindextext/index.md | 88 +++++++++++++++++++ .../web/api/element/ariarowindextext/index.md | 87 ++++++++++++++++++ 2 files changed, 175 insertions(+) create mode 100644 files/ja/web/api/element/ariacolindextext/index.md create mode 100644 files/ja/web/api/element/ariarowindextext/index.md diff --git a/files/ja/web/api/element/ariacolindextext/index.md b/files/ja/web/api/element/ariacolindextext/index.md new file mode 100644 index 00000000000000..a070ddbddaaf8c --- /dev/null +++ b/files/ja/web/api/element/ariacolindextext/index.md @@ -0,0 +1,88 @@ +--- +title: Element.ariaColIndexText +slug: Web/API/Element/ariaColIndexText +l10n: + sourceCommit: 388135bbfb0c1f852a17f52a6bfe6e85c8dc1abc +--- + +{{APIRef("DOM")}}{{SeeCompatTable}} + +**`ariaColIndexText`** は {{domxref("Element")}} インターフェイスのプロパティで、[`aria-colindextext`](/ja/docs/Web/Accessibility/ARIA/Attributes/aria-colindextext) 属性の値を反映し、aria-colindex の人間が読むための代替テキストを定義します。 + +## 値 + +文字列です。 + +## 例 + +この例では、ID が `role-heading` の要素の `aria-colindex` 属性に "Aria Role column" が設定されています。`ariaColIndexText` を使用して、値を文字列 "New column name" に更新します。 + +```html + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Semantic Elements to use instead of ARIA's roles +
+ ARIA Role + + Semantic Element +
headerh1
headerh6
rowgroupthead
termdt
+``` + +```js +let el = document.getElementById("role-heading"); +console.log(el.ariaColIndexText); // "Aria Role" +el.ariaColIndexText = "New column name"; +console.log(el.ariaColIndexText); // "New column name" +``` + +## 仕様書 + +{{Specifications}} + +## ブラウザーの互換性 + +{{Compat}} + +## 関連情報 + +- [ARIA: table role](/ja/docs/Web/Accessibility/ARIA/Roles/table_role) diff --git a/files/ja/web/api/element/ariarowindextext/index.md b/files/ja/web/api/element/ariarowindextext/index.md new file mode 100644 index 00000000000000..f60bc65b4a3e64 --- /dev/null +++ b/files/ja/web/api/element/ariarowindextext/index.md @@ -0,0 +1,87 @@ +--- +title: Element.ariaRowIndexText +slug: Web/API/Element/ariaRowIndexText +l10n: + sourceCommit: 388135bbfb0c1f852a17f52a6bfe6e85c8dc1abc +--- + +{{APIRef("DOM")}}{{SeeCompatTable}} + +**`ariaRowIndexText`** は {{domxref("Element")}} インターフェイスのプロパティで、[`aria-rowindextext`](/ja/docs/Web/Accessibility/ARIA/Attributes/aria-rowindextext) 属性の値を反映し、aria-rowindex の人間が読むための代替テキストを定義します。 + +## 値 + +文字列です。 + +## 例 + +この例では、ID が `role-heading` の要素の `aria-rowindextext` 属性に "Heading row" が設定されています。`ariaRowIndexText` を使用して、値を文字列 "Updated heading row" に更新します。 + +```html + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Semantic Elements to use instead of ARIA's roles +
+ ARIA Role + + Semantic Element +
headerh1
headerh6
rowgroupthead
termdt
+``` + +```js +let el = document.getElementById("role-heading"); +console.log(el.ariaRowIndexText); // "Heading row" +el.ariaRowIndexText = "Updated heading row"; +console.log(el.ariaRowIndexText); // "Updated heading row" +``` + +## 仕様書 + +{{Specifications}} + +## ブラウザーの互換性 + +{{Compat}} + +## 関連情報 + +- [ARIA: table role](/ja/docs/Web/Accessibility/ARIA/Roles/table_role) From 9917d6a5ebc9ec005030f2c3b6c3601b2d9dd071 Mon Sep 17 00:00:00 2001 From: Masahiro FUJIMOTO Date: Sat, 20 Jul 2024 16:36:29 +0900 Subject: [PATCH 015/521] =?UTF-8?q?Web/API/Element/checkVisibility=20?= =?UTF-8?q?=E3=82=92=E6=96=B0=E8=A6=8F=E7=BF=BB=E8=A8=B3=20(#22424)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 2024/01/09 時点の英語版に基づき新規翻訳 * 脱字、翻訳漏れの修正 --------- Co-authored-by: potappo --- .../web/api/element/checkvisibility/index.md | 185 ++++++++++++++++++ 1 file changed, 185 insertions(+) create mode 100644 files/ja/web/api/element/checkvisibility/index.md diff --git a/files/ja/web/api/element/checkvisibility/index.md b/files/ja/web/api/element/checkvisibility/index.md new file mode 100644 index 00000000000000..e4a913cabb87b5 --- /dev/null +++ b/files/ja/web/api/element/checkvisibility/index.md @@ -0,0 +1,185 @@ +--- +title: "Element: checkVisibility() メソッド" +short-title: checkVisibility() +slug: Web/API/Element/checkVisibility +l10n: + sourceCommit: 2b07e7febdc4b51243873b0b4978228a603f3f73 +--- + +{{APIRef("DOM")}} + +**`checkVisibility()`** は {{domxref("Element")}} インターフェイスのメソッドで、この要素が可視状態であるかどうかを検査します。 + +このメソッドは以下のどちらかの場合に `false` を返します。 + +- 例えば CSS の {{cssxref("display")}} プロパティが [`none`](/ja/docs/Web/CSS/display#none) または [`contents`](/ja/docs/Web/CSS/display#contents) に設定されている場合のように、要素に関連づけられたボックスがない場合。 +- 要素または祖先要素が {{cssxref("content-visibility")}} プロパティを [`hidden`](/ja/docs/Web/CSS/content-visibility#hidden) に設定しているため、要素が描画されない場合。 + +オプションの引数を指定することで、「可視」の意味を他の解釈として検査することができます。 +例えば、要素の不透明度が `0` であるかどうか、要素の [`visibility`](/ja/docs/Web/CSS/visibility) プロパティの値が不可視であるかどうか、要素 {{cssxref("content-visibility")}} プロパティの値が [`auto`](/ja/docs/Web/CSS/content-visibility#auto) であり、現在その描画がスキップされているかどうかを追加で検査することができます。 + +## 構文 + +```js-nolint +checkVisibility(options) +``` + +### 引数 + +- `options` {{optional_inline}} + + - : 実行する追加チェックを示すオブジェクト。 + 可能なオプションは以下の通りです。 + + - `contentVisibilityAuto` + - : `true` を指定すると、要素 {{cssxref("content-visibility")}} プロパティに値 [`auto`](/ja/docs/Web/CSS/content-visibility#auto) がある(または継承している)場合に、現在その描画がスキップされているかどうかを調べます。 + 既定では `false` です。 + - `opacityProperty` + - : `true` を指定すると、要素の {{cssxref("opacity")}} プロパティが `0` の値である(または継承している)かどうかを調べます。 + 既定では `false` です。 + - `visibilityProperty` + + - : `true` を指定すると、{{cssxref("visibility")}} プロパティの値によって要素が不可視になっているかどうかを調べます。 + 既定では `false` です。 + + > **メモ:** 不可視の要素には、[`visibility: hidden`](/ja/docs/Web/CSS/visibility#hidden) が設定された要素や、[`visibility: collapse`](/ja/docs/Web/CSS/visibility#collapse) が設定された要素が含まれます。 + + - `checkOpacity` + - : [`opacityProperty`](#opacityproperty) の過去の別名です。 + - `checkVisibilityCSS` + - : [`visibilityProperty`](#visibilityproperty) の過去の別名です。 + +### 返値 + +以下の条件に当てはまる場合は `false`、当てはまらない場合は `true` となります。 + +- 要素に関連づけられたボックスがない場合。 +- 要素の {{cssxref("content-visibility")}} プロパティが [`hidden`](/ja/docs/Web/CSS/visibility#hidden) の値である(または継承している)場合。 +- `opacityProperty`(または `checkOpacity`)が `true` で、要素 {{cssxref("opacity")}} プロパティの値が `0` である(または継承している)場合。 +- `visibilityProperty`(または `checkVisibilityCSS`)が `true` で、{{cssxref("visibility")}} プロパティの値によって要素が不可視になっている場合。 +- `contentVisibilityAuto` が `true` で、{{cssxref("content-visibility")}} プロパティの値が [`auto`](/ja/docs/Web/CSS/content-visibility#auto) の値で(または継承している)、要素の描画がスキップされている場合。 + +## 例 + +### さまざまな CSS で checkVisibility() の検査 + +次の例では、`display`、`content-visibility`、`visibility`、`opacity` の各 CSS プロパティのさまざまな値の場合に、`checkVisibility()` の結果がどのように変化するかを検査することができます。 + +#### HTML + +この HTML は ` + + + + + + + + + + +``` + +次に `
` があり、引数にオプションを渡さなかった場合と、別個のオプション値が渡された場合の `checkVisibility()` の検査の結果を出力するために使用します。
+最後には、検査される要素(選択された CSS プロパティ値が適用される要素)があります。
+
+```html
+

+
可視性を検査する要素
+``` + +#### CSS + +CSSはテストする要素を強調表示するだけです。 + +```css +#test_element { + border: solid; + border-color: blue; +} +``` + +#### JavaScript + +下記のコードは、それぞれの `