Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 08.11.2013, 06:22
Новичок на форуме
Отправить личное сообщение для BashOrgRu Посмотреть профиль Найти все сообщения от BashOrgRu
 
Регистрация: 15.08.2011
Сообщений: 6

Плагин для CKEditor
Здравствуйте. Пишу плагин для CKEditor и возник следующий вопрос.
Имеется диалоговое окно с двумя полями для ввода

contents : [
                        {
                            id : 'general',
                            label : 'Строка',
                            elements : [
                                {
                                    type : 'textarea',
                                    id : 'firstLine',
                                    label : 'Строка - ссылка',
                                    cols: 140,
                                    rows: 1,
                                    validate : CKEDITOR.dialog.validate.notEmpty( 'Строка не может быть пустой' ),
                                    required : true,
                                    setup : function( firstElement )
                                    {
                                        var html = firstElement.getHtml();
                                        if ( html )
                                        {
                                            var div = document.createElement( 'p' );
                                            div.innerHTML = html;
                                            this.setValue( div.firstChild.nodeValue );
                                        }
                                    },
                                    commit : function( firstElement )
                                    {
                                        firstElement.setHtml( CKEDITOR.tools.htmlEncode( this.getValue() ) );
                                    }
                                },
                                {
                                    type : 'textarea',
                                    id : 'contents',
                                    label : 'Текст',
                                    cols: 140,
                                    rows: 22,
                                    validate : CKEDITOR.dialog.validate.notEmpty( 'Поле не может быть пустым' ),
                                    required : true,
                                    setup : function( element )
                                    {
                                        var html = element.getHtml();
                                        if ( html )
                                        {
                                            var div = document.createElement( 'div' );
                                            div.innerHTML = html;
                                            this.setValue( div.firstChild.nodeValue );
                                        }
                                    },
                                    commit : function( element )
                                    {
                                        element.setHtml( CKEDITOR.tools.htmlEncode( this.getValue() ) );
                                    }
                                }
                            ]
                        }
                    ]




и есть обработка OnShow:

onShow : function()
                    {
                        var sel = editor.getSelection(),
                            element = sel.getStartElement(),
                            firstLineElement = sel.getStartElement(); //пока что заглушка

                        if (( !element || element.getName() != 'ht' || !element.hasClass( editor.config.hidetext_class )) && ( !firstLineElement || firstLineElement.getName() != 'aht' || !firstLineElement.hasClass( editor.config.link_hidetext_class )))
                        {
                            element = editor.document.createElement( 'ht' );
                            firstLineElement = editor.document.createElement( 'aht' );
                            this.insertMode = true;
                        }
                        else
                            this.insertMode = false;

                        if (( element ) && (firstLineElement))
                        {
                            element = element.getAscendant( 'ht', true );
                            firstLineElement = firstLineElement.getAscendant( 'aht', true );
                        }

                        this.aht = firstLineElement;
                        this.setupContent( this.aht );

                        this.ht = element;
                        this.setupContent( this.ht );


                    }




Так вот вопрос в следующем:

Если с одним элементом все понятно (как его найти и редактировать), то как сделать тоже самое для двух элементов? С поисками по тэгу или по ID не получается
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
IDE для Java Script constant Библиотеки/Тулкиты/Фреймворки 0 27.09.2012 09:31
Ищу плагин jQuery для визуального изменения размера картинки FRIE jQuery 4 02.09.2012 23:22
Как превратить скрипт в плагин для jquery? lilumi jQuery 8 16.09.2011 17:39
Плагин для jquery Darooma2 jQuery 5 23.08.2010 10:41
Подскажите плагин для реализации Юрий Шу jQuery 5 25.06.2010 17:36