Javascript “浏览器后退/前进”按钮可加载多个编辑器窗体
我有一个在Rails 5中制作帖子的表单。我使用的是CKEditor文本编辑器,效果很好。但是,每次单击浏览器的“前进”或“后退”按钮时,都会将一个新的文本编辑器堆叠起来。参考:我使用的是“galetahub”中的CKEditor gem 我的问题与此问题类似: 我认为这是涡轮链接的问题,但我不知道还有什么可以尝试。除了完全禁用TurboLink之外,我还尝试了:Javascript “浏览器后退/前进”按钮可加载多个编辑器窗体,javascript,ruby-on-rails,ckeditor,ruby-on-rails-5,turbolinks,Javascript,Ruby On Rails,Ckeditor,Ruby On Rails 5,Turbolinks,我有一个在Rails 5中制作帖子的表单。我使用的是CKEditor文本编辑器,效果很好。但是,每次单击浏览器的“前进”或“后退”按钮时,都会将一个新的文本编辑器堆叠起来。参考:我使用的是“galetahub”中的CKEditor gem 我的问题与此问题类似: 我认为这是涡轮链接的问题,但我不知道还有什么可以尝试。除了完全禁用TurboLink之外,我还尝试了: 在div和form字段中插入“data no turbolink”和“data:{turbolinks:false}” 我尝试了从
document.addEventListener('turbolinks:before-cache', function()
{
CKEDITOR.replace('text_form')
});
and
$(document).on("turbolinks:load", function() {
CKEDITOR.replace('text_form')
});
(Both separately and together.)
gem 'ckeditor', github: 'galetahub/ckeditor'
以下是表单和字段:
<%= form_with model: @article, local: true, html:{multipart: true} do |form| %>
<div class="text-form">
<%= form.cktext_area :text, class: 'ckeditor', id: 'text_form' %>
</div>
<% end %>
任何帮助都将不胜感激。很久以来,我一直在寻找这个问题的答案。通常,我能够自己解决问题,但这让我绞尽脑汁。加载CK编辑器长度。 然后在长度为0时添加
如果(CKEDITOR.Instances['text\u form']==null)CKEDITOR.replace('text\u form')这对我不起作用。我是否需要用$(document)包装此方法。准备好了吗。。。或者类似的东西。
<%= form_with model: @article, local: true, html:{multipart: true} do |form| %>
<div class="text-form">
<%= form.cktext_area :text, class: 'ckeditor', id: 'text_form' %>
</div>
<% end %>
CKEDITOR.replace('text_form')