我有一个关于tinymce的视频上传,它会将一些代码插入编辑器中,如下所示:
var content2 = "<div class='playvideo' id='<?php echo $randomnumber;?>'>
<img class='posterimage' src='<?php echo $new_image_path; ?>'>
<a id='<?php echo $new_file; ?>' class='videoplaceholder'></a>
</div></div>";
parent.tinyMCE.execCommand('mceInsertContent', false,content2);
这很好用,并输出:
<p><div id="581827" class="playvideo">
<img class="posterimage" src="/uploads/videos/images/1097VID.jpg" alt="" />
<a class="videoplaceholder" id="1097VID.mp4"></a>
</div></p>
但是在插入这些内容之后,当然我想继续写文字。但是当我这样做时,文本将被放置在img标签之后的插入内容中。 像这样:
<p><div id="581827" class="playvideo">
<img class="posterimage" src="/uploads/videos/images/1097VID.jpg" alt="" />text i try to write goes here for some reason
<a class="videoplaceholder" id="1097VID.mp4"></a>
</div></p>
当单击enter为新行时,它会创建第二个div,其类与我插入的相同。这是一个奇怪的行为..我读到一个div在段落中是非法的,但它也不适用于span。
有没有人有任何指针?任何帮助是极大的赞赏。
答案 0 :(得分:1)
可以通过将
作为链接文本来修复img之后插入文本的问题,即代替<a id='<?php echo $new_file; ?>' class='videoplaceholder'></a>
可以使用<a id='<?php echo $new_file; ?>' class='videoplaceholder'> </a>
。我不确定这个类,但是可能有一种方法可以阻止TinyMCE默认添加类。