Javascript jquery可调整大小的事件未结束

Javascript jquery可调整大小的事件未结束,javascript,jquery,jquery-ui,javascript-events,jquery-ui-resizable,Javascript,Jquery,Jquery Ui,Javascript Events,Jquery Ui Resizable,我正在制作一些交互式UI,并使用jquery调整大小和鼠标事件 我为所有元素绑定mouseOver和click事件,当我得到一个click时,我移除click监听器(这样它就不会与可调整大小的监听器交互) 到目前为止,这一切都很正常,现在可以调整所选元素的大小。开始调整大小工作正常,但即使在鼠标点击后,元素调整大小事件也不会结束,它仍然会用鼠标调整大小。 怎么了 东西就在这里 主要部分包括: var inspect = true, // to disable inspe

我正在制作一些交互式UI,并使用jquery调整大小和鼠标事件

我为所有元素绑定mouseOver和click事件,当我得到一个click时,我移除click监听器(这样它就不会与可调整大小的监听器交互)

到目前为止,这一切都很正常,现在可以调整所选元素的大小。开始调整大小工作正常,但即使在鼠标点击后,元素调整大小事件也不会结束,它仍然会用鼠标调整大小。

怎么了

东西就在这里

主要部分包括:

var
  inspect = true,           // to disable inspect
  selected = null;          // currently selected event

function clickhandler(e) {
  console.log('click');
  if (selected != null)return;     // if some div is already selected, then return
  if (e.which == 3)return;         // if it was right click, return
  selected = $(e.target);          // selected = the element which received the click
  inspect = false;                 // disable inspection
  selected.addClass('selected');   // add SELECTED background + border
  $(window).unbind('click', clickhandler);  // remove the click listener
  $('.selected').resizable();               // make the selected element resizable
}

$(window).bind('click', clickhandler);    //bind the click event
“Esc”键被绑定以取消选择任何选择。

上下文菜单(正在侦听mouseclick事件)正在与resize end事件(也需要mouseclick事件)交互。解决方案:

  $('.selected').resizable({
    start:function () {
      $("*").destroyContextMenu();
      console.log('resize started');
    },
    stop:function () {

      $("*").contextMenu({
          menu:'myMenu'
        },
        function (action, el, pos) {
          console.log(el);
          eval(action + '(el)');
        });
      console.log('resize stopped');
    },
    resize:function () {
      console.log("resize happened");
    }
  });

我所做的是,在调整大小开始时立即销毁上下文菜单,这样它就不会再监听mouseclick事件了。并在调整大小事件结束时返回。

当我在其周围移动鼠标时,效果良好。当我点击时,不再有任何鼠标悬停动作,这是你想要的吗?我看不到无限的大小调整问题。@哦,为什么请尝试2-3次,有时不会发生,但大多数情况下会发生。。。是的,单击后鼠标盖会被删除,当你按“Esc”键时,鼠标盖会被重新添加。如果它能帮助任何人,如果你同时单击左键和右键,鼠标盖会成功停止调整大小。谢谢@John。。。如果它对任何人都有帮助,我使用的是contextMenu Js:。。。。这可能是在听鼠标点击上/下事件。@Pheonix-我也有类似的问题。我尝试了你在上面发布的解决方案。但是,在调整元素的大小一次后,这些元素将变得不可压缩。看看这里:我有同样的问题,但只是在IE中,有人有不同的解决方案吗?