【问题标题】:jQuery UI : How can I know that the div are center on drag eventjQuery UI:我怎么知道 div 以拖动事件为中心
【发布时间】:2017-12-11 08:03:30
【问题描述】:

如果我有两个或多个 div 或 p 标签。如果我将“我是标题 H3”(即我的 H3 标签)拖到“我是标题”,我想知道如何在我的小提琴示例(我将在下面提供)中获得每个元素的中心含义H1”(这是我的 H1 标记)或“我是段落 p”(这是我的 p 标记)的一行,表示两个元素彼此中心。

var element = $(".draggable_element");

element.each(function() {
  $(this).draggable({
    zIndex: 999,
    scroll: false,
    refreshPosition: true,
  });
});

Here is my fiddle.

【问题讨论】:

    标签: javascript jquery html css jquery-ui


    【解决方案1】:

    以下代码将帮助您在拖动时找到每个元素的中心。 https://jsfiddle.net/44ve3syv/4/

    var element = $(".draggable_element");
    element.each(function() {
         $(this).draggable({
                zIndex: 999,
                scroll: false,
            refreshPosition: true,
            drag: function() {
             console.log(1);
            },
            stop:function(){
                checkIfCenter($(this));
            }
            });
      });
      checkIfCenter = function(el){  
        var cPos;
        var elCenter = findCentre(el);
        var isCenter = true;
        $( ".draggable_element" ).each(function() {
          cPos = findCentre($(this));
          console.log(cPos);
          if(cPos.x == elCenter.x && cPos.y == elCenter.y && isCenter){
            isCenter = true;
          }else{
            isCenter = false;
          }
        });
        if(isCenter){
            alert("All elements came in center");
        }
      }
      findCentre = function(el){
        var offset = el.offset();
        var width = el.width();
        var height = el.height();
        var pos = { x : parseInt(offset.left + width / 2),y : parseInt(offset.top + height / 2)}
        return pos;
      }
    

    【讨论】:

    • 小提琴不工作意味着元素不可拖动
    • 当元素彼此居中时,当元素居中时会出现某种线条
    • 你的意思是当所有 3 个元素或任何两个元素时?
    • 所有元素,不限制为 2 或 3 表示示例(小提琴)是否有更多 div 标签或 p 标签或任何其他标签,例如假设我想将我的 p 标签居中对齐到 H1我的 H3 标签到 p 标签或 h1 标签甚至形成它的左边或右边。
    • 更新了答案和小提琴。我使用了 parseInt,如果你想要精确的中心,你可以删除它
    猜你喜欢
    • 1970-01-01
    • 2011-12-30
    • 2016-12-25
    • 1970-01-01
    • 2017-03-03
    • 1970-01-01
    • 1970-01-01
    • 2018-02-21
    • 2011-04-03
    相关资源
    最近更新 更多