1

CKEDITOR の body タグ内のすべての要素を繰り返し処理したいと思います。私はこのようにしようとしています:

document.getBody().getChildren()

しかし、反復に使用できない奇妙なコレクションが返されます。何かアドバイス?

ありがとう。

4

1 に答える 1

3

すべての要素を簡単に反復するには、ちょっとしたトリックを使用できます。

var elements = editor.document.getBody().getElementsByTag( '*' );

for ( var i = 0; i < elements.count(); ++i ) {
    console.log( elements.getItem( i ).getName() );
}

elementsただし、これはラップされたネイティブ DOMライブコレクションであることを忘れないでください。基本的に、反復中に DOM を変更するのは危険です。コレクションが変更される可能性があるからです。

ところで。それは「奇妙なコレクション」ではありません。ドキュメントをチェックしましたか?これはすべて文書化されています-何が返されgetChildren()、どのように使用されるか。

于 2013-06-14T19:59:04.823 に答える