tinymce 4.3.4 video_template_callback

tinymce 4.3.4 video_template_callback

目标是用我的 DOM 中的数据填充 "insert/edit video" 对话框中的 "Embed" 字段。 正如我从 docs 中了解到的那样,有 "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');
    },
});

但是调用 "insert/edit video" 对话框时回调不会触发。 可能是我错误地尝试以这种方式实施。感谢帮助。

我在使用 4.7.3 版的 video_template_callback 时遇到了问题。 我试图将 onclickcontrolslist 属性添加到我的视频标签中。最初,它没有出现,但经过一段时间的研究,我发现 TinyMCE 有一个标签属性的白名单,我需要将它添加到 extended_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(''),

此外,请注意所有属性都应小写。