Javascript Jquery |获取定义区域中的div元素
是否有一种简单的方法可以使Javascript Jquery |获取定义区域中的div元素,javascript,jquery,jquery-selectors,Javascript,Jquery,Jquery Selectors,是否有一种简单的方法可以使div元素完全适合定义的区域 例如: <div id="redbox"> RESIZE DIV </div> <div id="grid"> <div id="box1"></div> <div id="box2"></div> <div id="box3"></div> <div id="box4"></div> <
div
元素完全适合定义的区域
例如:
<div id="redbox"> RESIZE DIV </div>
<div id="grid">
<div id="box1"></div>
<div id="box2"></div>
<div id="box3"></div>
<div id="box4"></div>
</div>
调整DIV的大小
我有4个框(灰色),我可以调整div
(所有框顶部为红色)。调整大小后,我想知道哪些div元素完全适合这个区域
有人知道怎么做吗?
JQUERY
中是否有方法或函数?我认为还没有完整的解决方案。据了解,这可能是多种多样的
但您可以使用函数来实现这一点
知道可重新调整大小的
div
的绝对位置后,您可以创建坐标图,然后查看div
下的哪些元素,我认为withinBox
插件可能有助于您解决此问题()。您可以使用如下代码:
var area = $('#redbox'),
offset = area.offset(),
selected = $('#grid div').withinBox(offset.left,
offset.top,
area.width(),
area.height()
);
使用JQuery我要做的是遍历所有要检查的元素,得到它们的
.offset()
值,加上宽度和高度
对于每个元素,我将得到以下四个值是:
X1 (offset().top)
Y1 (offset().left)
X2 (= X1 + width)
Y2 (= Y1 + height)
我将使用这些值来检查以下四点(仍然针对每个要检查的元素)
假设我们对“covering”DIV做了相同的处理(检索它的四个角xd1、yd1、xd2、yd2),我将这样推理:
var area = $('#redbox'),
offset = area.offset(),
selected = $('#grid div').withinBox(offset.left,
offset.top,
area.width(),
area.height()
);
如果<强>一个或多个<强>属于我的“覆盖”div,则考虑div“被覆盖”。
编辑:我不知道有这样的插件,我想它的内部机制和我的一样,但我打赌这是一个比我的更简单的解决方案:)感谢有耐心附加有意义的图形。:)在我看来,这就是我所需要的。我必须弄明白!是的,这正是
withinBox
插件所做的+谢谢你的解释!谢谢你的帮助。如果我不能将现有的插件用于Inbox
,我将这样计算它!