目的是使用我DOM中的数据填充“插入/编辑视频”对话框中的“嵌入”字段。
据我从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');
},
});
但是,当调用“插入/编辑视频”对话框时,回调不会触发。
可能是我错误地尝试以这种方式实施。感谢帮助。
最佳答案
我在4.7.3版中遇到video_template_callback
的问题。
我试图在视频标签中添加onclick
和controlslist
道具。最初,它没有出现,但是经过一段时间的研究,我发现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(''),
另外,请注意,所有属性均应小写。