0

如果用户启用了 SCAYT,我希望它在网页加载期间保持启用状态。这可能意味着在 cookie 中保持状态。最简单的方法是什么?

如果有一种方法可以捕获 CKEDITOR SCAYT 启用/禁用活动就可以了,或者如果有一种方法可以连接到保存事件中也可以。我尝试了以下操作,但这只是完全禁用了保存,并且没有生成日志消息。

var editor = CKEDITOR.replace("ckeditor", {
  height: $(window).height() / 2 - 30,
  on: {
    save: function(evt) {
      Console.log("Saving...");
      this.customConfig.scayt_autoStartup = $.cookie("scayt_enabled", "enabled", { path: '/' });
    }
  }
});

我将以下内容放在 config.js 中:

config.scayt_autoStartup = $.cookie("scayt_enabled",  { path: '/' }) == "enabled";
4

1 回答 1

0

在升级到提供save事件的 CKEDITOR 的当前版本后,很容易使用 cookie(通过 JQuery)来完成此操作。

在我的编辑器脚本中:

var editor = CKEDITOR.replace("ckeditor", {
  save: function(evt) {
    var scaytEnabled = evt.editor.commands.scaytcheck.state==1;
    $.cookie("scayt_enabled", scaytEnabled.toString(), { path: '/' });
  }
}

在 config.js 中:

CKEDITOR.editorConfig = function(config) {
  var scayt_enabled = $.cookie("scayt_enabled");
  var se = scayt_enabled=="true";
  config.scayt_autoStartup = se;
}
于 2013-10-30T21:46:12.083 回答