From a2395f85bf5ab896475fa244f6452027b9b37b7b Mon Sep 17 00:00:00 2001 From: Masahiro FUJIMOTO Date: Mon, 2 Aug 2021 00:36:55 +0900 Subject: ChildNode.after を各インターフェイスへ分割 (#1582) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * ChildNode.after を各インターフェイスへ分割 * orphaned/Web/API/ChildNode/after を廃止 --- files/ja/_redirects.txt | 1 - files/ja/_wikihistory.json | 8 - .../ja/orphaned/web/api/childnode/after/index.html | 185 --------------------- files/ja/web/api/characterdata/after/index.html | 85 ++++++++++ files/ja/web/api/documenttype/after/index.html | 62 +++++++ files/ja/web/api/element/after/index.html | 90 ++++++++++ 6 files changed, 237 insertions(+), 194 deletions(-) delete mode 100644 files/ja/orphaned/web/api/childnode/after/index.html create mode 100644 files/ja/web/api/characterdata/after/index.html create mode 100644 files/ja/web/api/documenttype/after/index.html create mode 100644 files/ja/web/api/element/after/index.html (limited to 'files') diff --git a/files/ja/_redirects.txt b/files/ja/_redirects.txt index 9331206b20..d9b67a9d1b 100644 --- a/files/ja/_redirects.txt +++ b/files/ja/_redirects.txt @@ -3482,7 +3482,6 @@ /ja/docs/Web/API/CanvasRenderingContext2D.removeHitRegion /ja/docs/Web/API/CanvasRenderingContext2D/removeHitRegion /ja/docs/Web/API/Canvas_API/Drawing_graphics_with_canvas /ja/docs/Web/API/Canvas_API/Tutorial /ja/docs/Web/API/ChildNode /ja/docs/orphaned/Web/API/ChildNode -/ja/docs/Web/API/ChildNode/after /ja/docs/orphaned/Web/API/ChildNode/after /ja/docs/Web/API/ChildNode/before /ja/docs/orphaned/Web/API/ChildNode/before /ja/docs/Web/API/ChildNode/replaceWith /ja/docs/orphaned/Web/API/ChildNode/replaceWith /ja/docs/Web/API/Console.error /ja/docs/Web/API/Console/error diff --git a/files/ja/_wikihistory.json b/files/ja/_wikihistory.json index baa0d4f3bd..8582891cbd 100644 --- a/files/ja/_wikihistory.json +++ b/files/ja/_wikihistory.json @@ -50975,14 +50975,6 @@ "momoi" ] }, - "orphaned/Web/API/ChildNode/after": { - "modified": "2020-10-17T21:33:51.563Z", - "contributors": [ - "dskmori", - "Potappo", - "Shirasu" - ] - }, "orphaned/Web/API/ChildNode/before": { "modified": "2020-10-17T03:58:22.731Z", "contributors": [ diff --git a/files/ja/orphaned/web/api/childnode/after/index.html b/files/ja/orphaned/web/api/childnode/after/index.html deleted file mode 100644 index 837ab99d5e..0000000000 --- a/files/ja/orphaned/web/api/childnode/after/index.html +++ /dev/null @@ -1,185 +0,0 @@ ---- -title: ChildNode.after() -slug: orphaned/Web/API/ChildNode/after -tags: - - API - - DOM - - Method - - Node - - Reference -translation_of: Web/API/ChildNode/after -original_slug: Web/API/ChildNode/after ---- -
{{APIRef("DOM")}}
- -

ChildNode.after() は、ChildNode の親の子リストの、ChildNode の直後に、 {{domxref("Node")}} または {{domxref("DOMString")}} オブジェクトのセットを挿入します。 {{domxref("DOMString")}} オブジェクトは {{domxref("Text")}} ノードと等価なノードとして挿入されます。

- -

構文

- -
[Throws, Unscopable]
-void ChildNode.after((Node or DOMString)... nodes);
-
- -

パラメーター

- -
-
nodes
-
{{domxref("Node")}} または {{domxref("DOMString")}} オブジェクトのセットを挿入します。
-
- -

例外

- - - -

- -

要素の挿入

- -
var parent = document.createElement("div");
-var child = document.createElement("p");
-parent.appendChild(child);
-var span = document.createElement("span");
-
-child.after(span);
-
-console.log(parent.outerHTML);
-// "<div><p></p><span></span></div>"
-
- -

テキストの挿入

- -
var parent = document.createElement("div");
-var child = document.createElement("p");
-parent.appendChild(child);
-
-child.after("Text");
-
-console.log(parent.outerHTML);
-// "<div><p></p>Text</div>"
- -

要素とテキストの挿入

- -
var parent = document.createElement("div");
-var child = document.createElement("p");
-parent.appendChild(child);
-var span = document.createElement("span");
-
-child.after(span, "Text");
-
-console.log(parent.outerHTML);
-// "<div><p></p><span></span>Text</div>"
- -

ChildNode.after() はスコーピングに非対応

- -

after() メソッドは with 文でのスコーピングに対応していません。詳細は {{jsxref("Symbol.unscopables")}} をご覧ください。

- -
with(node) {
-  after("foo");
-}
-// ReferenceError: after is not defined 
- -

ポリフィル

- -

以下のポリフィルで、Internet Explorer 9 以降でも after() メソッドが利用できます。

- -
// from: https://github.com/jserz/js_piece/blob/master/DOM/ChildNode/after()/after().md
-(function (arr) {
-  arr.forEach(function (item) {
-    if (item.hasOwnProperty('after')) {
-      return;
-    }
-    Object.defineProperty(item, 'after', {
-      configurable: true,
-      enumerable: true,
-      writable: true,
-      value: function after() {
-        var argArr = Array.prototype.slice.call(arguments),
-          docFrag = document.createDocumentFragment();
-
-        argArr.forEach(function (argItem) {
-          var isNode = argItem instanceof Node;
-          docFrag.appendChild(isNode ? argItem : document.createTextNode(String(argItem)));
-        });
-
-        this.parentNode.insertBefore(docFrag, this.nextSibling);
-      }
-    });
-  });
-})([Element.prototype, CharacterData.prototype, DocumentType.prototype]);
- -

別のポリフィル

- -
// from: https://github.com/FabioVergani/js-Polyfill_Element.prototype.after/blob/master/after.js
-
-(function(x){
- var o=x.prototype,p='after';
- if(!o[p]){
-    o[p]=function(){
-     var e, m=arguments, l=m.length, i=0, t=this, p=t.parentNode, n=Node, s=String, d=document;
-     if(p!==null){
-        while(i<l){
-         e=m[i];
-         if(e instanceof n){
-            t=t.nextSibling;
-            if(t!==null){
-                p.insertBefore(e,t);
-            }else{
-                p.appendChild(e);
-            };
-         }else{
-            p.appendChild(d.createTextNode(s(e)));
-         };
-         ++i;
-        };
-     };
-    };
- };
-})(Element);
-
-
-
-/*
-minified:
-
-(function(x){
- var o=x.prototype;
- o.after||(o.after=function(){var e,m=arguments,l=m.length,i=0,t=this,p=t.parentNode,n=Node,s=String,d=document;if(p!==null){while(i<l){((e=m[i]) instanceof n)?(((t=t.nextSibling )!==null)?p.insertBefore(e,t):p.appendChild(e)):p.appendChild(d.createTextNode(s(e)));++i;}}});
-}(Element));
-*/
-
- -

仕様

- - - - - - - - - - - - - - -
仕様書策定状況コメント
{{SpecName('DOM WHATWG', '#dom-childnode-after', 'ChildNode.after()')}}{{Spec2('DOM WHATWG')}}初期定義
- -

ブラウザー実装状況

- - - -

{{Compat("api.ChildNode.after")}}

- -

関連情報

- - diff --git a/files/ja/web/api/characterdata/after/index.html b/files/ja/web/api/characterdata/after/index.html new file mode 100644 index 0000000000..ea6dedc1ed --- /dev/null +++ b/files/ja/web/api/characterdata/after/index.html @@ -0,0 +1,85 @@ +--- +title: CharacterData.after() +slug: Web/API/CharacterData/after +tags: + - API + - DOM + - Method + - Node + - Reference +browser-compat: api.CharacterData.after +translation_of: Web/API/CharacterData/after +--- +
{{APIRef("DOM")}}
+ +

CharacterData.after() は、一連の {{domxref("Node")}} または {{domxref("DOMString")}} オブジェクトをこの CharacterData の親ノードの子リストの、この CharacterData の直後に挿入します。 {{domxref("DOMString")}} オブジェクトは {{domxref("Text")}} ノードと等価なノードとして挿入されます。

+ +

構文

+ +
+after(... nodes)
+
+ +

引数

+ +
+
nodes
+
挿入する一連の {{domxref("Node")}} または {{domxref("DOMString")}} オブジェクトです。
+
+ +

例外

+ + + +

+ +

新しいノードでテキストを挿入

+ +

after() メソッドで、 CharacterData ノードの後に新しいノードを挿入することができます。

+ +
+const h1TextNode = document.getElementsByTagName('h1')[0].firstChild;
+h1TextNode.after(" #h1");
+
+h1TextNode.parentElement.childNodes
+// NodeList [#text "CharacterData.after()", #text " #h1"]
+
+h1TextNode.data;
+// "CharacterData.after()"
+
+ +

現在のノードにテキストを追加

+ +

現在のノードにテキストを追加したいのであれば、 appendData() メソッドで現在のノードのデータに追加することができます。

+ +
+const h1TextNode = document.getElementsByTagName('h1')[0].firstChild;
+h1TextNode.appendData(" #h1");
+
+h1TextNode.parentElement.childNodes;
+// NodeList [#text "CharacterData.after() #h1"]
+
+h1TextNode.data;
+// "CharacterData.after() #h1"
+
+ +

仕様書

+ +{{Specifications}} + +

ブラウザーの互換性

+ +

{{Compat}}

+ +

関連情報

+ + diff --git a/files/ja/web/api/documenttype/after/index.html b/files/ja/web/api/documenttype/after/index.html new file mode 100644 index 0000000000..ccf4b5e008 --- /dev/null +++ b/files/ja/web/api/documenttype/after/index.html @@ -0,0 +1,62 @@ +--- +title: DocumentType.after() +slug: Web/API/DocumentType/after +tags: + - API + - DOM + - Method + - Node + - Reference +browser-compat: api.DocumentType.after +translation_of: Web/API/DocumentType/after +--- +
{{APIRef("DOM")}}
+ +

DocumentType.after() は、一連の {{domxref("Node")}} または {{domxref("DOMString")}} オブジェクトをこの DocumentType の親ノードの子リストの、このDocumentType の直後に挿入します。 {{domxref("DOMString")}} オブジェクトは {{domxref("Text")}} ノードと等価なノードとして挿入されます。

+ +

構文

+ +
+after(... nodes)
+
+ +

引数

+ +
+
nodes
+
挿入する一連の {{domxref("Node")}} または {{domxref("DOMString")}} オブジェクトです。
+
+ +

例外

+ + + +

+ +

+ +
+let docType = document.implementation.createDocumentType("html", "", "");
+let myDoc = document.implementation.createDocument("", "", docType);
+
+docType.after(document.createElement('html'));
+
+myDoc.childNodes;
+// NodeList [<!DOCTYPE html>, <html>]
+
+ +

仕様書

+ +{{Specifications}} + +

ブラウザーの互換性

+ +

{{Compat}}

+ +

関連情報

+ + diff --git a/files/ja/web/api/element/after/index.html b/files/ja/web/api/element/after/index.html new file mode 100644 index 0000000000..52186ca2fb --- /dev/null +++ b/files/ja/web/api/element/after/index.html @@ -0,0 +1,90 @@ +--- +title: Element.after() +slug: Web/API/Element/after +tags: + - API + - DOM + - Method + - Node + - Reference +browser-compat: api.Element.after +translation_of: Web/API/Element/after +--- +
{{APIRef("DOM")}}
+ +

Element.after() は、Element の親の子リストの、Element の直後に、 {{domxref("Node")}} または {{domxref("DOMString")}} オブジェクトのセットを挿入します。 {{domxref("DOMString")}} オブジェクトは {{domxref("Text")}} ノードと等価なノードとして挿入されます。

+ +

構文

+ +
+after(... nodes)
+
+ +

引数

+ +
+
nodes
+
挿入する一連の {{domxref("Node")}} または {{domxref("DOMString")}} オブジェクトです。
+
+ +

例外

+ + + +

+ +

要素の挿入

+ +
let container = document.createElement("div");
+let p = document.createElement("p");
+container.appendChild(p);
+let span = document.createElement("span");
+
+p.after(span);
+
+console.log(container.outerHTML);
+// "<div><p></p><span></span></div>"
+
+ +

テキストの挿入

+ +
let container = document.createElement("div");
+let p = document.createElement("p");
+container.appendChild(p);
+
+p.after("Text");
+
+console.log(container.outerHTML);
+// "<div><p></p>Text</div>"
+ +

要素とテキストの挿入

+ +
let container = document.createElement("div");
+let p = document.createElement("p");
+container.appendChild(p);
+let span = document.createElement("span");
+
+p.after(span, "Text");
+
+console.log(container.outerHTML);
+// "<div><p></p><span></span>Text</div>"
+ +

仕様書

+ +{{Specifications}} + +

ブラウザーの互換性

+ +

{{Compat}}

+ +

関連情報

+ + -- cgit v1.2.3-54-g00ecf