Redactor:模糊导致错误的事件

时间:2016-11-05 01:51:37

标签: jquery redactor redactor.js

我在laravel项目中使用redactor作为文本编辑器。

每当编辑器在页面上并初始化时,每当我点击任何地方时都会收到此错误。

Uncaught TypeError: $(...).closest(...).size is not a function(…)  
Uncaught TypeError: $current.closest(...).size is not a function(…) 

只要我在编辑器中输入,或者只需点击页面上的任意位置,就会触发此操作。编辑器初始化正常,并且工作正常。我不确定为什么它会抱怨模糊事件。

我正在初始化它:

$('#myInput').redactor({
        'buttons': ['html', 'formatting', 'bold', 'italic', 'unorderedlist', 'orderedlist', 'link'],
        'placeholder': 'Comments...'
    });

看起来这是不满意的部分之一:

$(document).on('mousedown.redactor-blur.'+this.uuid,

我正在使用Redactor 10.2.5

感谢您的任何建议!

2 个答案:

答案 0 :(得分:10)

我正在使用Redactor 10.2.2,但在升级jquery版本(2.x - > 3.x)后出现类似错误。

我认为与jquery版本3和以下2行存在一些冲突:

line 1463:    if ($(e.target).closest('.redactor-editor, .redactor-toolbar, .redactor-dropdown').size() !== 0)
line 6913:    if ($current.closest(element).size() > 0)

应该修改

line 1463:    if ($(e.target).closest('.redactor-editor, .redactor-toolbar, .redactor-dropdown').length !== 0)
line 6913:    if ($current.closest(element).length > 0)

for Reactor 10.2.5。

我希望这对你有所帮助。

答案 1 :(得分:2)

我认为这种解决方案会更好

$(function() {
    $.fn.size = function() {
        return this.length;
    }
});

您不必更改供应商,因此您不必每次在某个地方安装应用程序时都应对更改。