4

我想实现一个原始的吸管功能,可以在具有背景颜色的 div 上单击吸管光标,并通过使用 jQuery 读取 CSS 样式来拉取这种颜色。但是如果点击了 div 的边框并且它是不同的颜色怎么办?我怎么拉那个颜色?我在 click 事件中看不到任何东西告诉我点击了边框而不是内容。

有没有一种方法可以感知边框点击,而不需要计算边框在哪里以及点击是否在该区域中的所有数学?

感谢您的任何想法。

4

1 回答 1

6

有没有一种方法可以感知边框点击,而不需要计算边框在哪里以及点击是否在该区域中的所有数学?

简短的回答:不,不是没有经过数学计算。

原因是,边框不是元素,它们是 DOM 元素的一部分,没有自己独立的事件处理程序。

但是,要实现您想要的,您似乎至少需要这些成分:

.offset(), .innerWidth(), innerHeight(), 4 个边框宽度通过.css(),event.pageX()event.pageY

演示:http: //jsfiddle.net/terryyounghk/YvFQX/

熟悉盒子模型将有助于像这样的思维过程,以及开发一个好的代码策略。

参考:http ://www.w3.org/TR/CSS2/box.html

于 2013-04-23T09:51:31.370 回答