我试图使用redactor.js来编辑流星中的一些div; 在我的模板中:
<template name="home">
<section class="editable">
</section>
...
</template>
并在js:
Template.home.events({
"click section.editable": function(event) {
$(event.target).redactor();
},
});
当我点击该部分时,这会正确创建redactor所见即所得的编辑器;问题是再次点击,另一个编辑器(嵌套在前一个编辑器中);我只是在编辑器不存在的情况下才试图限制redactor()方法的执行。
答案 0 :(得分:0)
你可以将状态包装在会话变量中吗?当然,一旦编辑完成后你就需要再次设置它(可能会尝试挂钩进入模糊事件?)
Template.home.events({
"click section.editable": function(event) {
var isEditorActive = Session.get("editorActive", false);
if (!isEditorActive) {
Session.set("editorActive",true);
$(event.target).redactor({
blurCallback: function(e)
{
Session.set("editorActive",false);
this.core.destroy(); // destroy redactor ?
}
});
}
}
});
<强> PREVIOUSLY: 强>
您是否有特殊原因想要使用流星事件?你可以使用redactor。
if (Meteor.isClient) { Meteor.startup(function() { $('section.editable').redactor({ focus: false }); }); }