2012-07-28 114 views
0

我有一个包含一些文本输入的div。我希望这些文本输入点击并接收基本的鼠标事件,但我想禁用包含div。有没有办法做到这一点? div比其他元素具有更高的z-index,它绝对定位,并且不允许我点击它下面的元素。谢谢!禁用Div覆盖点击,但允许儿童点击

+0

发布您的HTML,它更容易看到你想要做什么? – adeneo 2012-07-28 19:49:28

+0

涉及太多的代码。我认为这个问题基本上是如果一个div A是一个高于div B的层,div B是否可以获得点击?我认为下面的@flem有正确的答案。我或多或少只是想确认B不能收到点击。谢谢。 – botbot 2012-07-28 20:17:45

+1

有办法做这种事情,但是它们要么不是很好的被浏览器支持(指针事件),要么是复杂的(注册顶部元素点击,确定它们是否位于下部元素所在的特定区域内等等),所以在大多数情况下,只需要改变布局就行了。 – adeneo 2012-07-28 20:20:48

回答

1

您不能单击低于(深度)另一个元素的元素。赋予可操作的输入元素比覆盖div更高的z-indexes(和abs/rel定位)。

+0

伟大的,谢谢你的答案,只是想确认。我现在要选择的解决方案是摆脱包含div,并将绝对定位的文本字段附加到文档的正文。 – botbot 2012-07-28 20:15:21

+0

'cannot'是一个很强的词,在较新的浏览器中,您可以使用CSS [指针事件](https://developer.mozilla.org/en/CSS/pointer-events/)来做到这一点。只是说。 – adeneo 2012-07-28 20:18:06

+0

指针事件传统上用于SVG。尽管**一些**浏览器为html实现了它,但它们中的一些可能被认为是实验性的。还要注意,html的指针事件目前没有任何规范。他们被推迟到CSS4。我们可能从未看到标准的实现。 – 2012-07-29 07:41:32