【发布时间】:2015-01-02 18:12:25
【问题描述】:
我试图让两个图标,“向上”和“向下”,当我将鼠标悬停在它们上方时,它们的颜色会变深。所以我又做了两个图标,“UpHover”和“DownHover”,它们一开始是隐藏的,当我鼠标进入向上或向下时分别显示,当我鼠标离开它们时再次隐藏。 Down正常工作,但是由于某种原因,当我鼠标进入Up时,Up和Down都被隐藏了,并且UpHover和DownHover都显示出来了。
当我删除$(".UpHover").show(); 行时(我在它下面加上了星号),效果停止了,所以错误必须在该行中。但我终其一生都无法弄清楚为什么那条线与 Down 或 DownHover 有任何关系。我错过了什么?
<%= link_to image_tag("Up.png", class: "Up"), '#' %>
<%= link_to image_tag("Down.png", class: "Down"), '#' %>
<%= link_to image_tag("UpHover.png", class: "UpHover"), '#' %>
<%= link_to image_tag("DownHover.png", class: "DownHover"), '#' %>
<script type="text/javascript">
$(".UpHover").hide();
$(".DownHover").hide();
$(".Up").mouseenter(function () {
$(".Up").hide();
***$(".UpHover").show();***
});
$(".UpHover").mouseleave(function () {
$(".Up").show();
$(".UpHover").hide();
});
$(".Down").mouseenter(function () {
$(".Down").hide();
$(".DownHover").show();
});
$(".DownHover").mouseleave(function () {
$(".Down").show();
$(".DownHover").hide();
});
</script>
【问题讨论】:
-
用CSS不是更容易做到吗?
-
您可以使用 CSS 伪类更轻松地解决这个问题 :hover 试试这个链接以获得快速介绍:w3schools.com/cssref/sel_hover.asp
-
当你隐藏
Up时,Down会移动到它的位置。所以鼠标进入Down,它就被隐藏了。 -
拼错了
text/javascipt。
标签: javascript jquery hide show mouseenter