javascript - jQuery 用户界面 : How can I know that the div are center on drag event

标签 javascript jquery html css jquery-ui

如果我有两个或多个 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.

最佳答案

下面的代码将帮助您在拖动时找到每个元素的中心。 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;
  }

关于javascript - jQuery 用户界面 : How can I know that the div are center on drag event,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44963726/

相关文章:

html - 具有 "display: none"的元素仍然可见

javascript - 带有数组获取变量的 $.post 语法

jquery减少Silverlight的采用?

javascript - 从 DOM 而不是从 ViewModel 更新 Knockout `attr` 绑定(bind)

在 if 语句中提升 Javascript 函数

javascript - 如何在 TypeScript React 中向 onChange 和 onClick 函数添加类型

javascript - 如何在nodejs中将unsigned int打包为二进制字符串?

javascript - 格式化小数 javascript/jquery

javascript - 如何获取 JSON 中特定 YouTube channel 即将到来的直播事件提要

html - 在单行图像中裁剪到最短的图像高度?