我想实现一个原始的吸管功能,可以在具有背景颜色的 div 上单击吸管光标,并通过使用 jQuery 读取 CSS 样式来拉取这种颜色。但是如果点击了 div 的边框并且它是不同的颜色怎么办?我怎么拉那个颜色?我在 click 事件中看不到任何东西告诉我点击了边框而不是内容。
有没有一种方法可以感知边框点击,而不需要计算边框在哪里以及点击是否在该区域中的所有数学?
感谢您的任何想法。
我想实现一个原始的吸管功能,可以在具有背景颜色的 div 上单击吸管光标,并通过使用 jQuery 读取 CSS 样式来拉取这种颜色。但是如果点击了 div 的边框并且它是不同的颜色怎么办?我怎么拉那个颜色?我在 click 事件中看不到任何东西告诉我点击了边框而不是内容。
有没有一种方法可以感知边框点击,而不需要计算边框在哪里以及点击是否在该区域中的所有数学?
感谢您的任何想法。
有没有一种方法可以感知边框点击,而不需要计算边框在哪里以及点击是否在该区域中的所有数学?
简短的回答:不,不是没有经过数学计算。
原因是,边框不是元素,它们是 DOM 元素的一部分,没有自己独立的事件处理程序。
但是,要实现您想要的,您似乎至少需要这些成分:
.offset()
, .innerWidth()
, innerHeight()
, 4 个边框宽度通过.css()
,event.pageX()
和event.pageY
演示:http: //jsfiddle.net/terryyounghk/YvFQX/
熟悉盒子模型将有助于像这样的思维过程,以及开发一个好的代码策略。