【发布时间】:2010-11-19 23:06:23
【问题描述】:
这是场景:
您有两张图片,它们相互堆叠。最高阶的 z-indexed 图像负责处理点击事件(想想 Google 的 Map API)并且是透明的,而下面的图像负责视觉表示。
这是一个伪 HTML/CSS 表示:
div.visual-container {
width: 10px;
height: 10px;
}
div.visual-container:hover {
background-color: #555;
}
div.click-container {
width: 10px;
height: 10px;
}
<div class='lowest'>
<div class='visual-container'></div>
</div>
<div class='highest'>
<div class='click-container'></div>
</div>
现在,当点击“最高”元素时,也会在“最低”元素上调度事件。
基本思路:
function onHoverEventForHighest() {
createMouseEvent(lowest_element, 'mouseover', event);
};
这部分很好,并相应地传输事件,但它似乎没有调用 :hover CSS psuedo-class。
有没有人幸运地做过这种性质的事情?
【问题讨论】:
-
究竟是什么不调用
:hover?将鼠标悬停在最顶层的元素上?还是您希望它传播到最底层?另外,您是否遇到了特定的浏览器问题? -
创建一个 DOM 事件 'mouseover' 并在所需元素上调用它不会调用该元素的 :hover CSS 伪类。没有特定的浏览器。
-
所以,是的,基本上它并没有按照我想要的方式传播。它会调用 mouseover 事件,但不会调用 :hover。
标签: javascript html css dom