如何检测元素是否相对于另一个jquery存在

时间:2014-08-07 14:15:35

标签: javascript jquery grid position relative

您好我必须遵循以下问题:

我有一个4乘4格的div并且它们都在按键上被动画化(它们移动它们的位置),但它们重叠。有没有办法检测每个div的左侧相对是否有元素,如果是,则阻止动画?

使用箭头移动div

以下是文件和演示:

  

http://lab.anorangeleaf.com/grid/
  http://lab.anorangeleaf.com/grid/main.js JavaScript
  使用的jquery位于/jquery.js
  对不起,我无法创建一个jsfiddle :(

1 个答案:

答案 0 :(得分:0)

您应该使用包含布尔值(true,false)的4x4矩阵,以便始终知道每个div中是否存在元素。

然后,当触发按键事件时,检查元素X应该去的div是否已经托管了另一个元素Y,在这种情况下,你不会移动X.

要使其正常工作,您应该从"侧开始检查"与按下的键相关的方块。

A B C D
E F G H
I J K L
M N O P

如果按下向上,则开始检查A行,然后检查E,I和M. 如果按下了,则开始检查M行,然后检查I,E和A. 如果按下右键,则开始检查D列,然后检查C,B和A. 如果按下左键,则开始检查A列,然后检查B,C和D.

jsfiddle上的快速示例,它应该完全符合您的要求