【发布时间】:2013-07-11 14:40:37
【问题描述】:
我在背景图片下方有一个按钮。为了使按钮可点击,我添加了一个“指针事件:无”。但是,我还想要一个精灵图像,在其中更改悬停时的背景图像,指针事件也会禁用它。有没有办法保持元素的悬停属性,同时让点击通过它?
我搜索并尝试了 jquery unbind click 并在单击#cover_button 时返回 false,但它不起作用。
这是我的代码。如果我保留指针事件:无,我可以单击背景图像下方的按钮。但这会禁用悬停属性。如果我删除它,我将无法点击。
#cover_button {
pointer-event: none;
position: absolute;
width: 46px;
height: 24px;
left: 0;
top: 0;
background: url(http://s13.postimg.org/bqxlnbfs3/Like.png);
}
#cover_button:hover {
background: url(http://www.moronacity.com/tech-journal/images/2011/February/small-Facebook-like-button-counter.gif);
}
编辑:
这是一个小提琴:
可点击但不可悬停
http://jsfiddle.net/3PXTK/1/
这是另一个:可悬停但不可点击(我刚刚删除了指针事件:无) http://jsfiddle.net/3PXTK/
【问题讨论】:
-
如果将cover_button和实际按钮包装在一个容器中,您可以将点击绑定到父容器,并让它触发实际的按钮点击。如果由于某种原因这是不可能的,请在点击时短暂隐藏封面,获取其下方的元素,并触发它的点击事件。发布小提琴以获得更多帮助。
-
我不知道该怎么做,因为按钮是一个 iframe。无论如何,这里是 jsfiddle Clickable jsfiddle.net/3PXTK/1 Hoverable jsfiddle.net/3PXTK
-
您正在使用包含来自另一个域的内容的 iFrame。如果不付出一些认真的努力,您将无法操纵此内容。我建议像插件一样查看 jquery facebook
-
如果我不操作 iframe 会怎样?我设法保留了指针事件:无,然后检测到 #cover_like_button_holder iframe 上的悬停。那行得通,我只是现在不知道如何替换背景图像。 jQuery可以做到吗?比如,如果#ElementB 悬停,则更改#ElementA 上的背景图像。
标签: jquery css events pointers click