.surroundContents()

Range.surroundContents()は、Rangeの内容を新しいNodeへ移動し、 Rangeの指定する開始位置を新しいノードに置き換えます。

このメソッドは、newNode.appendChild(range.extractContents())、 range.insertNode(newNode)と、ほとんど同じです。 この囲み処理の後、レンジの境界点はnewNodeを含みます。

ただし、Rangeが境界点が1つだけのTextではないNode(訳注:おそらくImage等)を分割しようとすると、 例外がスローされます。 また、上記の代わりに部分的(不完全)にノードが選択されていると、 それらは複製されず、その代わりに操作が失敗します。

文法

range.surroundContents(newNode);
引数 説明
newNode レンジに基いて分割を行うNodeを指定します。

var range = document.createRange();
var newNode = document.createElement("p");

range.selectNode(document.getElementsByTagName("div").item(0));
range.surroundContents(newNode);

仕様

ブラウザ互換性

デスクトップ
機能 Chrome Firefox
(Gecko)
IE Opera Safari
基本 1.0 (1.7 or earlier) 9.0 9.0
モバイル
機能 Android Firefox
Mobile
IE
Mobile
Opera
Mobile
Safari
Mobile
基本 1.0 (1.0) 9.0 9.0

関連項目

 Back to top

© 2017 Mozilla Contributors
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.

このページは、ページトップのURL先のMozilla Developer Network(以下、MDN)のコンテンツを翻訳した内容を基に構成されています。 構成について異なる点も含まれますので、下記の項目を確認し、必要に応じて元のコンテンツをご確認ください。 もし、誤訳などの間違いを見つけましたら、 @tomofまで教えていただければ幸いです。

  • 特定のブラウザに特化しすぎている情報やあまりにも古い情報、 または試験的に導入されているようなAPIや機能については、省略していることがあります。
  • 例やデモについて、実際にページ内で動作させる関係で一部ソースコードを変更している場合や、 その例で使用しているコンテンツの単語や文章などを日本人向けに変更しいてる場合があります。
  • MDNの更新頻度が高いため、元のコンテンツと比べ情報が古くなっている可能性があります。
  • "訳注:"などの断わりを入れた上で、日本人向けの情報の追記を行っている事があります。