我正在使用ckeditor,我们构建了一个自定义插件来定义页面上锚点的链接。现在,当我尝试在我的页面上获取所有锚点时,不会返回任何内容。
我的HTML如下所示:
<p>
<a name="anchor-anchor"></a></p>
但是当我试图在文档中得到所有锚点时:
editor.document.getElementsByTag("a")
什么都没有。但是当我放置一个普通的锚时,上面的代码就会发现。 我做错了吗?
问候!
答案 0 :(得分:3)
直接来自链接对话框:
// Find out whether we have any anchors in the editor.
// Get all IMG elements in CK document.
var elements = editor.document.getElementsByTag( 'img' ),
realAnchors = new CKEDITOR.dom.nodeList( editor.document.$.anchors ),
anchors = retval.anchors = [];
for ( var i = 0; i < elements.count() ; i++ )
{
var item = elements.getItem( i );
if ( item.data( 'cke-realelement' ) && item.data( 'cke-real-element-type' ) == 'anchor' )
anchors.push( editor.restoreRealElement( item ) );
}
for ( i = 0 ; i < realAnchors.count() ; i++ )
anchors.push( realAnchors.getItem( i ) );
for ( i = 0 ; i < anchors.length ; i++ )
{
item = anchors[ i ];
anchors[ i ] = { name : item.getAttribute( 'name' ), id : item.getAttribute( 'id' ) };
}