如何检测“编辑帖子”页面中的富文本编辑器是否有更改?
我想要的是当用户在富文本编辑器(HTML和Visual窗格)中键入内容时执行一个函数。
编辑:我在HTML窗格中完成了在tinyMCE创建的隐藏文本区域中关联jQuery keyup事件,但我仍然无法在Visual选项卡中检测用户输入。
我正在使用Wordpress 3.2.1,我知道他们正在使用tinyMCE来实现富文本编辑器功能。
似乎 tinyMCE 使用iframe
在富文本编辑器中构建 Visual 标签,因此我尝试了指向here的示例任何结果。
任何帮助表示感谢。
答案 0 :(得分:2)
不确定如何将其添加到WordPress,但从TinyMCE的角度来看,编辑器上的isDirty()方法应该有所帮助。
所以你可以简单地使用
if (tinyMCE.activeEditor.isDirty()) {
//Do something
}
检查当前活动的编辑器。 WordPress可能会为您提供访问编辑器实例的其他方法。
答案 1 :(得分:2)
最后,我通过添加此代码段来解决此问题:
<script type="text/javascript">
jQuery(function ($) {
// Was needed a timeout since RTE is not initialized when this code run.
setTimeout(function () {
for (var i = 0; i < tinymce.editors.length; i++) {
tinymce.editors[i].onChange.add(function (ed, e) {
// Update HTML view textarea (that is the one used to send the data to server).
ed.save();
});
}
}, 1000);
});
</script>
向@HarkályGergő致谢,提示他解决这个问题:)