如何绑定CKeditor中同一元素上的单击和双击事件

时间:2018-02-15 06:59:27

标签: javascript jquery click ckeditor double-click

我遇到CKeditor点击事件和双击事件的问题。 目前,我将点击事件和双击事件绑定到CKEditor dom。

    editor.on('doubleclick', function (evt) {
        console.log("doubleclicked");
        //Some ajax calls
    }, null, null, 999 );
    editor.on('click', function (evt) {
        console.log("clicked");
        //Some ajax calls
    }, null, null);

上面代码的一个问题是,当我双击该元素时,它会首先触发click事件。当我双击元素时,两个代码都会执行。

针对上述情况的CKEditor的任何解决方案?

我的问题与CKeditor插件有关。因此,我必须绑定适当的(内置)事件以进行单击和双击。

1 个答案:

答案 0 :(得分:2)

试试这个。它会工作。对于CKeditor,您可以使用此行editor.on('dblclick', function (evt) {

替换editor.on('doubleclick', function (evt) {

Check this link.

    function singleClick(e) {
       console.log('single click');
   }

   function doubleClick(e) {
       console.log('double click');
   }

   editor.on('dblclick', function (evt) {
        $(this).data('double', 2);
        doubleClick.call(this, evt);
        //Some ajax calls
    }, null, null, 999 );
    editor.on('click', function (evt) {
        var that = this;
        setTimeout(function() {
            var dblclick = parseInt($(that).data('double'), 10);
            if (dblclick > 0) {
                $(that).data('double', dblclick-1);
            } else {
                singleClick.call(that, evt);
            }
        }, 300);
        //Some ajax calls
    }, null, null);