防止叠加和n.fn.init

时间:2017-04-14 19:50:53

标签: javascript jquery html css

如果内部div重叠,我想检查多个div。但我不能明确这个元素。

这是每个div的foreach函数

function check_overlay(){
    //check if divs are overlaying
    $("#mytest[data-item-id]").each(function() {    
        var id_item = $(this).data('item-id');
        console.log(id_item);
        var content = $("#content"+id_item); 
        var rating = $("#rating"+id_item);

        var status = collision(content,rating);
        console.log(content) ====> here i'm getting [object Object]
        if(status){
            console.log(status);
            console.log($(this).data('item-id-flex'));         

       }
    });
}

这是碰撞功能

function collision($div1, $div2) {

    var x1 = $div1.offset().left;
    var y1 = $div1.offset().top;
    var h1 = $div1.outerHeight(true);
    var w1 = $div1.outerWidth(true);
    var b1 = y1 + h1;
    var r1 = x1 + w1;
    var x2 = $div2.offset().left;
    var y2 = $div2.offset().top;
    var h2 = $div2.outerHeight(true);
    var w2 = $div2.outerWidth(true);
    var b2 = y2 + h2;
    var r2 = x2 + w2;

    if (b1 < y2 || y1 > b2 || r1 < x2 || x1 > r2) return false;
    return true;
}

div就像这样附加了AJAX

$.each(item, function() {
 var item_id = this.id;
    var elements= '<div id="mytest" data-item-id="'+ item_id +'" class="row">' +
        '<div id="#content'+ item_id +'" class="col-xs-12 ">' +
             '<h2 class="col-xs-12 ">'+ name +'</h2>' +
         '</div>' +    
          '<div id="#rating'+item_id +'" class="col-xs-12">' +
              '<p class="col-xs-6 ">HELLLO</p>' +
          '</div>' +
         '</div>';

});

$(elements).insertBefore('#loadingDiv');

我是如此绝望......我不知道我能做些什么......

更新

我需要什么

[div#content255215252251521558.col-xs-12.content-div.no-padding, context: document, selector: "#content255215252251521558"]

现在看起来

n.fn.init {context: document, selector: "#content255215252251521558"}

0 个答案:

没有答案