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 を廃止 --- .../ja/orphaned/web/api/childnode/after/index.html | 185 --------------------- 1 file changed, 185 deletions(-) delete mode 100644 files/ja/orphaned/web/api/childnode/after/index.html (limited to 'files/ja/orphaned') 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")}}

- -

関連情報

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