[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: гемор с tinymce
Страницы: 1, 2, 3
andrey888
Invis1ble ок попробую.
Тебе Уже огромное спасибо! Конечно я надеюсь только на себя, но хорошо что по крайней мере хоть один человек на форуме знаком с этим беспределом под названием tinymce.

А ведь застрял на простой вещи.. открывать диалоговое по кнопке и открывать это же диалоговое при onclick по элементу в эдиторе.

Натыкаешься на tinymce.get('your_editor_id_here').plugins.myplugin.myfunction(); , начинаешь искать каким образом получить "your_editor_id_here" и ведь ни одна хрень не подходит. Доки помоему писались для них же самих чтоб не забыть , но ни как ни для тех кто хочет поработать с API более плотно..

_____________
Прогноз на следующие 5 лет : Россия, Китай - две величайшие державы.
США в Ж*пе. Справедливость восторжествует. )
Invis1ble
они продают дополнительные продукты
не удивительно, что доки хренового качества, мол покупайте у нас готовое и не мучайтесь
подход к ведению бизнеса более чем сомнительный, как мне кажется
хорошо хоть исходники не обфусцированы

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

andrey888
AddOnManager тоже в консоли ругается undefined...

Вывел в консоли просто первое слово tinymce - выводит исходный код того что у меня написано в textarea эдитора.. 0_O


<body id="tinymce" class="mce-content-body " data-id="content" contenteditable="true">
<p>
hello world!!!</p>
<p><img
src="1" border="0" alt="rtg" width="88" height="88" onclick="console.log( tinymce )" data-mce-src="1" data-mce-selected="1"></p>
</body>



Разве tinymce это не объект содержащий всё остальное: плагины, методы и т.д. и т.п. Может изначально не туда обращаюсь ?

_____________
Прогноз на следующие 5 лет : Россия, Китай - две величайшие державы.
США в Ж*пе. Справедливость восторжествует. )
andrey888
UPD

из плагина alert(tinymce.PluginManager.get('myplugin')); выдает код моего плагина - все как надо.

а вот если посадить alert на элемент в textarea самого эдитора то tinymce для него становится тем что я написал выше <body id="tinymce" и понятно что у этого tinymce уже нет никакого PluginManager свойства. То есть обращение идет не к tinymce объекту что странно..... huh.gif

_____________
Прогноз на следующие 5 лет : Россия, Китай - две величайшие державы.
США в Ж*пе. Справедливость восторжествует. )
andrey888
Цуко.. оказывается tinymce лежит в родителе ..
вот так

console.log( window.parent.tinymce.PluginManager.get('myexample') )"


Все встало на свои места - обращается куда нужно. Теперь я так понимаю дело за малым - обратиться к функции в этом плагине.. Но


console.log( window.parent.tinymce.PluginManager.get('myexample').MyFunction() )


выдает undefined is not a function .. сейчас то что не нравится ему ?

_____________
Прогноз на следующие 5 лет : Россия, Китай - две величайшие державы.
США в Ж*пе. Справедливость восторжествует. )
Invis1ble
Цитата
оказывается tinymce лежит в родителе ..

ясен пень, элемент же в iframe находится

Цитата
выдает undefined is not a function .. сейчас то что не нравится ему ?

а ты посмотри, что возвращает get() - функцию. Естественно, у нее нет никакого свойства MyFunction
учи javascript smile.gif

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

Invis1ble
Цитата
А ведь застрял на простой вещи.. открывать диалоговое по кнопке и открывать это же диалоговое при onclick по элементу в эдиторе.

вот такой вот хак я придумал:
Свернутый текст
<img src="1" border="0" alt="rtg" width="88" height="88" onclick="window.parent.$('[aria-label="Insert/edit image"]').trigger('click')" data-mce-src="1" data-mce-selected="1">

предполагается, что в родителе подключен jQuery
Insert/edit image поменяешь на нужный тебе, который на твоей кнопке

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

Invis1ble
парсер форума ломает код
вот так должно быть:

window.parent.$('[aria-label=&quot;Insert/edit image&quot;]').trigger('click')

суть хака: ищем кнопку плагина в тулбаре и кликаем её программно

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

andrey888
Invis1ble ) мозг работает в одном направлении , я сегодня с утра уже сделал вот так

window.parent.document.getElementById('my_id').click();

твой вариант просто c jquery, суть та же. :)

Цитата
учи javascript
get() это разве buildin функция в js ? Мне кажется это метод самого tinymce .. ?

окно открывается , теперь думаю как при этом передавать данные элемента по которому я нажал, то ли сохронять их в глобальной видимости как то а потом уже функцией в плагине проверять есть ли они или нет..

_____________
Прогноз на следующие 5 лет : Россия, Китай - две величайшие державы.
США в Ж*пе. Справедливость восторжествует. )
andrey888
Передовать видимо буду в куках..
а вообще интересно, из тех кто на форуме, с tinymce больше никто так не е*ался ?
я видать везунчик ? laugh.gif

_____________
Прогноз на следующие 5 лет : Россия, Китай - две величайшие державы.
США в Ж*пе. Справедливость восторжествует. )
Invis1ble
я неделю или больше писал менеджер картинок
но основное время ушло на переписывание бэкэнда

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

andrey888
еще один вопрос возник... при подключении можно указывать invalid_elements
можно ли их указать только при наличии определенного контента.
Пример..
у меня идет при вставке список ul li
при изменении существующего li TinyMCE заменяет его а рядом прописывает еще один с пустым контентом внутри
<li> </li>

было бы круто не удалять его через js проверяя есть ли он, а просто прописать в invalid_elements что нить типа

invalid_elements : "li[ no break space ]"

не прописывается внутри no break space )) форум вырезает )

_____________
Прогноз на следующие 5 лет : Россия, Китай - две величайшие державы.
США в Ж*пе. Справедливость восторжествует. )
andrey888
пока юзаю костыль.. на чистом js определяю элемент и удаляю его из DOM..

_____________
Прогноз на следующие 5 лет : Россия, Китай - две величайшие державы.
США в Ж*пе. Справедливость восторжествует. )
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.