0

我正在使用来自https://github.com/jcubic/jquery.splitter的 jQuery Splitter 插件。分离器工作正常。我需要知道如何在停止拆分器的拖动后立即触发某些事件。我需要在后端保留新的拆分器左侧位置并下次使用。

mouseup、mousemove 事件未按预期工作。下面是我尝试过的方法。它仅在鼠标单击拆分器而不拖动它时才有效(鼠标单击同一位置)。拖动拆分器后,这将不起作用。

      jQuery('.vspliter').on("mouseup", function (e) {
            alert('Mouse is released now');
                    // call ajax function over here
      });

如果需要更多信息,请告诉我。

4

2 回答 2

1

我可以通过检测拖动使用以下代码解决此问题:

       var isDragging = false;
       jQuery('.spliter_panel').mousedown(function() {
           jQuery('.spliter_panel').mousemove(function() {
               isDragging = true;
               jQuery('.spliter_panel').unbind("mousemove");
           });
       });
       jQuery('.spliter_panel').mouseup(function() {
           var wasDragging = isDragging;
           isDragging = false;
           jQuery('.spliter_panel').unbind("mousemove");
           if (wasDragging) {
                //Call Ajax method
           }
       });
于 2012-10-19T08:53:26.070 回答
0

已经为 onDragStart、onDragEnd 和 onDrag 设置了拆分器表面处理程序,因此我能够简单地通过以下方式获取位置信息:

 $('.MySplitter').split({
     orientation: 'vertical',
     limit: 10,
     onDragEnd: getSplitterLocation
 });

 function getSplitterLocation(e) {
     console.log(e);  // jQuery.Event
 }

也许这是在提出原始问题后添加到拆分器中的......

于 2014-11-05T19:30:52.363 回答