重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

これは私の記憶違いかもしれないのですが…。
私には innerText を http://www.whatwg.org/specs/web-apps/current-wor … で見た記憶がありますが、今確認すると見つかりません。
http://togetter.com/li/235970

今までに innerText が HTML Standard (HTML5) に限らず、標準化された経緯があれば URL を教えていただけないでしょうか?

# 最近、別件で記憶違いが発覚したので同じことになるかもしれないと思いながら質問しています。
# 悪魔の証明もあるので「標準化されていない場合」に回答しづらいかと思いますが、情報をお寄せいただければ有難いです。

A 回答 (1件)

innerText が標準化プロセスに乗ったことはないと思います。

少なくとも、私は存じません。

WebKit の DOM IDL など、他の資料ではないでしょうか。こちらは (inn|out)er(HTML|Text) が揃っています。

HTMLElement.idl (WebCore)
http://www.opensource.apple.com/source/WebCore/W …

DOM (Dart)
http://code.google.com/p/dart/source/browse/bran …

なお、innerText の標準化はしばしば議論の俎上に載せられますが、収束したことはありません。昨年の二月、WHATWG での議論から innerText の仕様を書いてくれた人がいました。

innerText
http://aryeh.name/spec/innertext/innertext.html

これが昨年の七月から八月にかけて議論されますが、結局は保留になります。以下から辿ると経緯が分かりやすいでしょう。

Spec Element.innerText
https://www.w3.org/Bugs/Public/show_bug.cgi?id=1 …

要するに、単純にテキストを連結する textContent と違い、innerText は取得時に (a) br 要素を改行文字にする、(b) script 要素などの中身を含めない、(c) 非表示の内容を含めない、(d) スタイルに合わせて整形する(pretty-printing)のように、ビューの影響を考えなくてはなりません(これは MDN にも書かれています)。

このことは contentEditable や Selection.toString() の挙動にも関わります。それゆえ、HTML/HTML5 の編集者である Hixie が「今年中に着手する予定はない」と上で明言しています。

---
なお、DOMParser は XML 用です。text/html で切り替えてくれれば良いのですけどね。
    • good
    • 0
この回答へのお礼

詳しいアドバイスありがとうございます。
innerTextの標準化に至っていない経緯がよくわかりました。
textContentとの挙動の違いもあるので代替できないパターンもありそうですね…。

> なお、DOMParser は XML 用です。
むむ…。便利な関数だと思っていましたが、早々上手くはいかないようですね。
createHTMLDocumentの実装が整うまで待つことにします。

お礼日時:2012/01/04 02:44

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!