使用jquery检查两种颜色是否接触

时间:2013-08-29 13:29:48

标签: javascript jquery colors background contact

我正在制作一个jquery游戏,我有一个级别作为背景,而不是每个级别都有很多行代码检查它的位置,有没有办法检查两种颜色是否接触。所以背景和角色。

我宁愿不使用插件。

jquery用于检查它是否触及一行:

if(level === 1) {
    if(c.css('left') === '90px') {
        c.css({'left': '115px', 'bottom': '94px'});
    }
}

http://jsfiddle.net/Hive7/KPyxN/2/

1 个答案:

答案 0 :(得分:2)

 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;
    }

JSFIDDLE DEMO