gpt4 book ai didi

javascript - CKEDITOR 在销毁之前检查 Dirty

转载 作者:行者123 更新时间:2023-11-27 22:45:19 24 4
gpt4 key购买 nike

我有一个网络应用程序,可以创建和管理支持票证。因此,可以在浏览器内的单个页面上一次打开多个选项卡,并且每个选项卡中都有一个 CKEDITOR 实例。选项卡可以根据需要打开和关闭,当选项卡关闭时,选项卡内的任何 CKEDITOR 实例都会被销毁。

下面的代码允许在离开整个页面时检查任何 CKEDITOR 实例中的更改:

function beforeUnload( evt ) {
for ( var name in CKEDITOR.instances ) {
if ( CKEDITOR.instances[ name ].checkDirty() )
return evt.returnValue = "You will lose the changes made in the editor.";
}
}
if ( window.addEventListener ) {
window.addEventListener( "beforeunload", beforeUnload, false );
} else {
window.attachEvent( "onbeforeunload", beforeUnload );
}

这非常有效,但是,如果包含 CKEDITOR 实例的页面上的选项卡已关闭,我想在销毁 CKEDITOR 实例之前执行 checkDirty。

我正在寻找的是能够检测 CKEDITOR 实例上的“销毁”事件,然后使用 checkDirty 检查该实例。我找不到检测“销毁”事件的方法。

如果有任何帮助,我们将不胜感激。

最佳答案

您可以使用contentDomUnload event CKEditor 的功能:

for (var name in CKEDITOR.instances) {
CKEDITOR.instances[name].on('contentDomUnload', function() {
// Do here whatever you need
if (this.checkDirty()) {
// The instance is dirty
}
});
}

该事件在内容 DOM 结构被破坏之前触发。

关于javascript - CKEDITOR 在销毁之前检查 Dirty,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38449749/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com