2016-06-11 3 views
1

Цель состоит в том, чтобы заполнить поле «Вставить» в диалоговом окне «Вставить/изменить видео» с данными из моей DOM. Как я понял из docs есть «video_template_callback» для этой цели:tinymce 4.3.4 video_template_callback

tinymce.init({ 
    selector: '#text', 
    theme: 'modern', 
    height: 300, 
    menubar: false, 
    plugins: ['media code'], 
    toolbar: 'media code', 
    video_template_callback: function (data) { 
     console.log('data'); 
    }, 
}); 

Но обратный вызов не срабатывает при вызове «вставить/редактировать видео» диалоговые. Может быть, я ошибаюсь, пытаясь реализовать этот путь. Спасибо за помощь.

+0

У меня такая же проблема с tinymce версии 4.5.2, video_template_callback не запускается. – Yovav

ответ

0

У меня были проблемы с video_template_callback в версии 4.7.3. Я попытался добавить onclick и controlslist реквизита в мой тег видео. Первоначально он не появился, но после некоторого времени исследования я понял, что TinyMCE имеет белый список свойств тегов, и мне нужно добавить его в расширенные_valid_elements. Он работает с этой конфигурацией:

extended_valid_elements: 'video[onclick|controlslist|controls]', 
video_template_callback: ({ 
    width, height, poster, source1, source1mime, source2, source2mime, 
}) => [ 
    `<video onclick="playFunction" controls controlslist="nodownload"` 
    `width="${width}" height="${height}" ${(poster ? `poster="${poster}` : '')}>`, 
    `<source src="${source1}" ${(source1mime ? `type="${source1mime}"` : '')} />`, 
    `<source src="${source2}" ${(source2mime ? `type="${source2mime}"` : '')} />`, 
    '</video>', 
].join(''), 

Также обратите внимание, что все свойства должны быть расположены ниже.

+0

Спасибо @ user2849706 – MapUser