From 0245a637604d36e2f75903a6d6f236bffd476e67 Mon Sep 17 00:00:00 2001 From: Florian Merz Date: Mon, 8 Feb 2021 18:35:45 +0100 Subject: fix some more zh-cn macros --- files/zh-cn/html_in_xmlhttprequest/index.html | 86 ---------------------- .../vue_styling/index.html | 2 +- .../api/htmltablerowelement/rowindex/index.html | 2 +- files/zh-cn/web/api/location/tostring/index.html | 4 +- .../api/mediarecorder/ondataavailable/index.html | 2 +- files/zh-cn/web/api/svggraphicselement/index.html | 2 +- .../reference/global_objects/array/some/index.html | 9 --- .../reference/statements/break/index.html | 2 +- 8 files changed, 7 insertions(+), 102 deletions(-) delete mode 100644 files/zh-cn/html_in_xmlhttprequest/index.html (limited to 'files/zh-cn') diff --git a/files/zh-cn/html_in_xmlhttprequest/index.html b/files/zh-cn/html_in_xmlhttprequest/index.html deleted file mode 100644 index 77d9eb0822..0000000000 --- a/files/zh-cn/html_in_xmlhttprequest/index.html +++ /dev/null @@ -1,86 +0,0 @@ ---- -title: HTML in XMLHttpRequest -slug: HTML_in_XMLHttpRequest ---- -

W3C XMLHttpRequest规范添加了XMLHttpRequest对象对HTML解析的支持(原本只支持XML解析).这项特性允许开发者使用XMLHttpRequest来获取一个HTML资源经过解析后的DOM对象.

-

限制

-

为了避免用户使用XMLHttpRequest的同步模式,HTML解析被设计为只支持异步模式.而且,只有当responseType属性被设置为"document"时,HTML解析才会开启.这种限制是为了避免当用户只需要获取 text/html类型资源的responseText属性时浏览器做无用的HTML解析而浪费时间.另外,该限制也同样可以避免在HTTP错误页面(通常是text/html类型的响应)中responseXML属性为空的情况.

-

用法

-

使用XMLHttpRequest时,把HTML资源作为DOM检索和把XML资源作为DOM检索的区别只有两点:1. 不可以使用同步模式. 2. 请求一个文档时,在调用open()方法之后,send()方法之前,必须明确的指定 XMLHttpRequest对象的responseType属性为字符串"document".

-
var xhr = new XMLHttpRequest();
-xhr.onload = function() {
-  alert(this.responseXML.title);
-}
-xhr.open("GET", "file.html");
-xhr.responseType = "document";
-xhr.send();
-
-

特性检测

-

方法1

-

此方法依赖于该特性的限制之一,即"强制异步模式".如果在同步模式中将"document"赋值给XMLHttpRequest对象的responseType属性,浏览器将会抛出异常.

-
function HTMLinXHR() {
-  if (!window.XMLHttpRequest)
-    return false;
-  var req = new window.XMLHttpRequest();
-  req.open('GET', window.location.href, false);
-  try {
-    req.responseType = 'document';
-  } catch(e) {
-    return true;
-  }
-  return false;
-}
-
-
-

{{ JSFiddleLink('HTcKP/1/') }}

-

该方法是同步执行的,并且不需要依赖任何外部资源.但是,由于该方法是间接的检测浏览器是否支持XMLHttpRequest对象的HTML解析特性,所以下面的检测方法2可能更加直接更加可靠一点.

方法2

-

如何准确的检测浏览器是否支持XMLHttpRequest中的HTML解析有两个难点.首先,检测的结果只能在异步模式中获得,因为HTML解析只支持异步模式.其次,你必须真实的通过HTTP协议获取一个文件, 因为,如果使用data:URL,测试会因浏览器是否支持data:URL而受到影响.

-

因此,要检测浏览器是否支持XMLHttpRequest中的HTML解析,需要在服务器上放置一个测试用的HTML文件,该测试文件体积较小,并且不是格式良好的XML文件:

-
<title>&amp;&<</title>
-

如果该文件被命名为detect.html, 那么下面的函数可以用来检测浏览器是否支持XMLHttpRequest中的HTML解析:

-
function detectHtmlInXhr(callback) {
-  if (!window.XMLHttpRequest) {
-    window.setTimeout(function() { callback(false); }, 0);
-    return;
-  }
-  var done = false;
-  var xhr = new window.XMLHttpRequest();
-  xhr.onreadystatechange = function() {
-    if (this.readyState == 4 && !done) {
-      done = true;
-      callback(!!(this.responseXML && this.responseXML.title && this.responseXML.title == "&&<"));
-    }
-  }
-  xhr.onabort = xhr.onerror = function() {
-    if (!done) {
-      done = true;
-      callback(false);
-    }
-  }
-  try {
-    xhr.open("GET", "detect.html");
-    xhr.responseType = "document";
-    xhr.send();
-  } catch (e) {
-    window.setTimeout(function() {
-      if (!done) {
-        done = true;
-        callback(false);
-      }
-    }, 0);
-  }
-}
-
-

参数callback是一个函数,如果浏览器支持HTML解析,那么该函数被异步调用的时候,true会作为唯一的参数传给callback,不支持的话,false 会作为唯一的参数传给callback.

-

{{ JSFiddleLink }}('xfvXR/1/')

字符编码

-

如果HTTP响应头Content-Type字段定义了字符的编码类型, 那么文档的编码类型将指定为该编码. 否则, 如果文档存在BOM(byte order mark), 那么该BOM所表示的编码将会被使用. 再否则, 如果文档的前1024个字节中存在meta 元素,并且指定了文档的编码类型,那么该编码将会被使用.如果这些都没有指定,那么文件将会按UTF-8编码识别.

-

浏览器兼容性

-

{{ CompatibilityTable() }}

-
Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Support 18 11 --- --- {{ compatno() }}
(535.14)
-
-
Feature Android Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
Support --- 11 --- --- ---
-
-

规范

- -

{{ languages({"ja":"ja/HTML_in_XMLHttpRequest","en":"en/HTML_in_XMLHttpRequest"}) }}

diff --git a/files/zh-cn/learn/tools_and_testing/client-side_javascript_frameworks/vue_styling/index.html b/files/zh-cn/learn/tools_and_testing/client-side_javascript_frameworks/vue_styling/index.html index 114a2a15db..a616afc79f 100644 --- a/files/zh-cn/learn/tools_and_testing/client-side_javascript_frameworks/vue_styling/index.html +++ b/files/zh-cn/learn/tools_and_testing/client-side_javascript_frameworks/vue_styling/index.html @@ -5,7 +5,7 @@ translation_of: Learn/Tools_and_testing/Client-side_JavaScript_frameworks/Vue_st ---
{{LearnSidebar}}
-
{{PreviousMenuNext(“ Learn / Tools_and_testing / Client-side_JavaScript_frameworks / Vue_methods_events_models”,“ Learn / Tools_and_testing / Client-side_JavaScript_frameworks / Vue_computed_properties”,“ Learn / Tools_and_testing / Client-side_JavaScript_frameworks”)}
+
{{PreviousMenuNext("Learn/Tools_and_testing/Client-side_JavaScript_frameworks/Vue_methods_events_models","Learn/Tools_and_testing/Client-side_JavaScript_frameworks/Vue_computed_properties","Learn/Tools_and_testing/Client-side_JavaScript_frameworks")}}

现在终于到了使我们的应用程序看起来更好的时候了。在本文中,我们将探讨使用CSS样式Vue组件的不同方法。

diff --git a/files/zh-cn/web/api/htmltablerowelement/rowindex/index.html b/files/zh-cn/web/api/htmltablerowelement/rowindex/index.html index 0e10295803..c10f4f2d61 100644 --- a/files/zh-cn/web/api/htmltablerowelement/rowindex/index.html +++ b/files/zh-cn/web/api/htmltablerowelement/rowindex/index.html @@ -5,7 +5,7 @@ translation_of: Web/API/HTMLTableRowElement/rowIndex ---
{{APIRef("HTML DOM")}}
-

HTMLTableRowElement.rowIndex只读属性表示一个行相对于整个位置{{的HtmlElement("表")}}。

+

HTMLTableRowElement.rowIndex只读属性表示一个行相对于整个位。

即使{{HtmlElement("thead")}},{{HtmlElement("tbody")}}和{{HtmlElement("tfoot")}}}的元素在HTML中乱序显示,浏览器也会以正确的顺序。因此,行数从<thead><tbody>,从<tbody><tfoot>

diff --git a/files/zh-cn/web/api/location/tostring/index.html b/files/zh-cn/web/api/location/tostring/index.html index 6af60a303c..c975af6b11 100644 --- a/files/zh-cn/web/api/location/tostring/index.html +++ b/files/zh-cn/web/api/location/tostring/index.html @@ -28,8 +28,8 @@ var result = anchor.toString(); // Returns: 'https://developer.mozilla.org/en-US 评论 - {{SpecName('HTML WHATWG',“#dom-location-href”)}} - {{Spec2('HTML WHATWG')}} + {{SpecName("HTML WHATWG","#dom-location-href")}} + {{Spec2("HTML WHATWG")}} diff --git a/files/zh-cn/web/api/mediarecorder/ondataavailable/index.html b/files/zh-cn/web/api/mediarecorder/ondataavailable/index.html index 0fd81b1a49..0bf5fce305 100644 --- a/files/zh-cn/web/api/mediarecorder/ondataavailable/index.html +++ b/files/zh-cn/web/api/mediarecorder/ondataavailable/index.html @@ -5,7 +5,7 @@ translation_of: Web/API/MediaRecorder/ondataavailable ---

{{APIRef("MediaStream Recording")}}

-

MediaRecorder.ondataavailable 事件处理程序(part of the MediaStream记录API)处理{{event("dataavailable")}}事件,让您在响应运行代码{{domxref("Blob")}}数据被提供使用。

+

MediaRecorder.ondataavailable 事件处理程序(part of the MediaStream记录API)处理{{event("dataavailable")}}事件,让您在响应运行代码{{domxref("Blob")}}数据被提供使用。

dataavailable当MediaRecorder将媒体数据传递到您的应用程序以供使用时,将触发事件。数据在包含数据的{{domxref("Blob")}}对象中提供。这在四种情况下发生:

diff --git a/files/zh-cn/web/api/svggraphicselement/index.html b/files/zh-cn/web/api/svggraphicselement/index.html index 2b0ae33a27..2993848c2e 100644 --- a/files/zh-cn/web/api/svggraphicselement/index.html +++ b/files/zh-cn/web/api/svggraphicselement/index.html @@ -15,7 +15,7 @@ translation_of: Web/API/SVGGraphicsElement

 SVGGraphicsElement 接口表示SVG元素,其主要目的是将图形直接渲染到组中。

-

{{InheritanceDiagram(600, 120)} }

+

{{InheritanceDiagram(600, 120)}}

提示: 该接口是SVG 2中引入的,它取代了SVG 1.1中的{{domxref("SVGLocatable")}}和{{domxref("SVGTransformable")}}接口。

diff --git a/files/zh-cn/web/javascript/reference/global_objects/array/some/index.html b/files/zh-cn/web/javascript/reference/global_objects/array/some/index.html index 734cace600..426e6b16a6 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/array/some/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/array/some/index.html @@ -78,8 +78,6 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/some
[2, 5, 8, 1, 4].some(x => x > 10);  // false
 [12, 5, 8, 1, 4].some(x => x > 10); // true
-

{{ EmbedLiveSample('Testing_array_elements_using_arrow_functions', '', '', '', 'Web/JavaScript/Reference/Global_Objects/Array/some') }}

-

判断数组元素中是否存在某个值

此例中为模仿 includes()  方法, 若元素在数组中存在, 则回调函数返回值为 true :

@@ -95,8 +93,6 @@ function checkAvailability(arr, val) { checkAvailability(fruits, 'kela'); // false checkAvailability(fruits, 'banana'); // true -

{{ EmbedLiveSample('Checking_whether_a_value_exists_in_an_array', '', '', '', 'Web/JavaScript/Reference/Global_Objects/Array/some') }}

-

使用箭头函数判断数组元素中是否存在某个值

var fruits = ['apple', 'banana', 'mango', 'guava'];
@@ -108,9 +104,6 @@ function checkAvailability(arr, val) {
 checkAvailability(fruits, 'kela');   // false
 checkAvailability(fruits, 'banana'); // true
-

{{ EmbedLiveSample('Checking_whether_a_value_exists_using_an_arrow_function', '', '', '', 'Experiment:StaticExamplesOnTop/JavaScript/Array/some') }}

- -

将任意值转换为布尔类型

@@ -134,8 +127,6 @@ getBoolean(1); // true getBoolean('true'); // true -

{{ EmbedLiveSample('Converting_any_value_to_Boolean', '', '', '', 'Web/JavaScript/Reference/Global_Objects/Array/some') }}

-

Polyfill

在第 5 版时,some() 被添加进 ECMA-262 标准;这样导致某些实现环境可能不支持它。你可以把下面的代码插入到脚本的开头来解决此问题,从而允许在那些没有原生支持它的实现环境中使用它。该算法是 ECMA-262 第 5 版中指定的算法,假定 Object 和 TypeError 拥有他们的初始值,且 fun.call 等价于 {{jsxref("Function.prototype.call")}}

diff --git a/files/zh-cn/web/javascript/reference/statements/break/index.html b/files/zh-cn/web/javascript/reference/statements/break/index.html index 9cecd6eef9..c243fab039 100644 --- a/files/zh-cn/web/javascript/reference/statements/break/index.html +++ b/files/zh-cn/web/javascript/reference/statements/break/index.html @@ -17,7 +17,7 @@ translation_of: Web/JavaScript/Reference/Statements/break
break [label];
-
label {{可选}}
+
label
与语句标签相关联的标识符。如果 break 语句不在一个循环或 {{jsxref("Statements/switch", "switch")}} 语句中,则该项是必须的。
-- cgit v1.2.3-54-g00ecf From 6a991c01ae23e6bf21964b68044ab72a75ac4b51 Mon Sep 17 00:00:00 2001 From: Florian Merz Date: Tue, 9 Feb 2021 10:31:56 +0100 Subject: remove deleted article from _redirects --- files/zh-cn/_redirects.txt | 1 - 1 file changed, 1 deletion(-) (limited to 'files/zh-cn') diff --git a/files/zh-cn/_redirects.txt b/files/zh-cn/_redirects.txt index e6b7dd8925..b2bb370f12 100644 --- a/files/zh-cn/_redirects.txt +++ b/files/zh-cn/_redirects.txt @@ -282,7 +282,6 @@ /zh-CN/docs/DOM/HTMLCanvasElement /zh-CN/docs/Web/API/HTMLCanvasElement /zh-CN/docs/DOM/HTMLDocument /zh-CN/docs/Web/API/HTMLDocument /zh-CN/docs/DOM/HTMLFieldSetElement /zh-CN/docs/Web/API/HTMLFieldSetElement -/zh-CN/docs/DOM/HTML_in_XMLHttpRequest /zh-CN/docs/HTML_in_XMLHttpRequest /zh-CN/docs/DOM/ImageData /zh-CN/docs/Web/API/ImageData /zh-CN/docs/DOM/Input.mozSetFileNameArray /zh-CN/docs/Web/API/HTMLInputElement/mozSetFileNameArray /zh-CN/docs/DOM/KeyboardEvent /zh-CN/docs/Web/API/KeyboardEvent -- cgit v1.2.3-54-g00ecf From a0ee33c19e35324f6ae8b8842899ef48d65ec04c Mon Sep 17 00:00:00 2001 From: Florian Merz Date: Thu, 11 Feb 2021 10:59:38 +0100 Subject: fix fixes --- files/zh-cn/web/api/htmltablerowelement/rowindex/index.html | 2 +- files/zh-cn/web/javascript/reference/statements/break/index.html | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'files/zh-cn') diff --git a/files/zh-cn/web/api/htmltablerowelement/rowindex/index.html b/files/zh-cn/web/api/htmltablerowelement/rowindex/index.html index c10f4f2d61..2939825e6b 100644 --- a/files/zh-cn/web/api/htmltablerowelement/rowindex/index.html +++ b/files/zh-cn/web/api/htmltablerowelement/rowindex/index.html @@ -5,7 +5,7 @@ translation_of: Web/API/HTMLTableRowElement/rowIndex ---
{{APIRef("HTML DOM")}}
-

HTMLTableRowElement.rowIndex只读属性表示一个行相对于整个位。

+

HTMLTableRowElement.rowIndex只读属性表示一个行相对于整个位置的{{HtmlElement("table")}。

即使{{HtmlElement("thead")}},{{HtmlElement("tbody")}}和{{HtmlElement("tfoot")}}}的元素在HTML中乱序显示,浏览器也会以正确的顺序。因此,行数从<thead><tbody>,从<tbody><tfoot>

diff --git a/files/zh-cn/web/javascript/reference/statements/break/index.html b/files/zh-cn/web/javascript/reference/statements/break/index.html index c243fab039..d38b51a97d 100644 --- a/files/zh-cn/web/javascript/reference/statements/break/index.html +++ b/files/zh-cn/web/javascript/reference/statements/break/index.html @@ -17,7 +17,7 @@ translation_of: Web/JavaScript/Reference/Statements/break
break [label];
-
label
+
label {{optional_inline}}
与语句标签相关联的标识符。如果 break 语句不在一个循环或 {{jsxref("Statements/switch", "switch")}} 语句中,则该项是必须的。
-- cgit v1.2.3-54-g00ecf