Добавьте jQuery .draggable() к образу TinyMCE

Я создал плагин для ajax-изображений, и вы вставляете видео в редактор TinyMCE. Это прекрасно работает, но я не могу найти способ присоединить событие.draggable() j Query к изображению ajax-ed внутри редактора.

Я попытался: (Я завернул изображение в div с классом Dr)

Привязка события мыши вниз и затем установка $(".dr").draggagle();, Применяя это непосредственно к классу.

Самым близким, что я получил, был следующий код в коде инициализации tinyMCE:

 ed.onClick.add(function(ed, e) {
        alert('Editor was clicked: ' + e.target.nodeName);
 });

Но я не могу применить draggable() к e.target\e.target.nodeName для жизни меня.

Есть идеи?

2 ответа

Решение

Из-за того, что tinymce не равен редактору исходного html-элемента (например, textarea) $(".dr").draggable(); не будет адресовать нужный элемент. Вам придется использовать $(ed.getBody()).find(".dr").draggable(); чтобы получить желаемый результат.

Марк: Дайте мне знать, подходит ли вам это хорошо или нет (это работает в моей системе).

Обновление: убедитесь, что вы вызываете перетаскиваемый объект после инициализации tinymce, иначе он не будет работать.

Оберните div вокруг изображения и укажите его ширину и высоту. Затем примените перетаскиваемую функцию jquery к живой функции, например:

$('#mydiv').live(function(){$(this).draggable()});
Другие вопросы по тегам