Fancytree不能使用ext-dnd进行ext-edit?

时间:2014-08-25 10:43:12

标签: jquery-ui jquery-draggable fancytree

jQuery UI 1.11 + Fancytree 2.3.0

$("#tree").fancytree({
  extensions: ["edit", "dnd"],
  edit{ ... },
  dnd{ ... },
  ...
});

[DND]

  • 已经有效。

[编辑]

  • [F2] - 忽略。
  • [Shift + Click] - 有效。

使用dnd扩展时无法使用F2键。为什么要破坏" F2" ?

1 个答案:

答案 0 :(得分:1)

[jQuery UI 1.11 - Draggable]

var mouse = $.widget("ui.mouse", {
  ...
  _mouseDown: function(event) {
    ...
    this.document
      .bind( "mousemove." + this.widgetName, this._mouseMoveDelegate )
      .bind( "mouseup." + this.widgetName, this._mouseUpDelegate );

    event.preventDefault();

    mouseHandled = true;
    return true;
},

Fancytree(ul.fancytree-container)在阻止event.preventDefault()时缺少焦点。

如果你能顽固聚焦。试试这段代码。

$("#tree").fancytree({
  extensions: ["edit", "dnd"],
  edit{ ... },  
  dnd{ ... },
  click: function(event, data){
    data.tree.$container.focus();
  },
  ...
});