【发布时间】:2014-03-20 19:26:49
【问题描述】:
我有一个有两个级别的导航。
<ul id="level1">
<li id="Level1ListItemOne">
<ul id="Level2">
<li></li>
<li></li>
...
</ul>
</li>
<li id="Level1ListItemTwo">
<ul id="Level2">
<li></li>
<li></li>
...
</ul>
</li>
...
</ul>
当页面打开时 Level1ListItemOne Level2 是可见的。 当用户将鼠标悬停在 Level1ListItemTwo 上时,Level1ListItemOne 的 Level2 消失,Level1ListItemTwo 的 Level2 出现。 当用户将鼠标悬停在 Level1ListItemTwo 之外时,Level1ListItemOne 的 Level2 会重新出现。
我正在用 JQuery 做这个
jQuery("#Level1ListItemTwo").hover(
function(){
jQuery("#Level1ListItemOne> #level2").hide(); //hide level2 when hover over
jQuery("#Level1ListItemOne").css("background-color","#003366");
},
function(){
jQuery("#Level1ListItemOne> #level2").show(); //show level2 when hover out
jQuery("#Level1ListItemOne").css("background-color","#0072c6");
}
);
这在 FireFox、Chrome、IE9 中完美运行,但 不是 IE10
在 IE10 中它第一次可以工作,但之后就不行了。所以 Level1ListItemTwo 的 Level2 永远不会再出现。 IE10 有什么不同 - 我在开发者工具中看不到任何东西!
【问题讨论】:
-
试试 jQuery.noConflict();
-
上面的jquery在jQuery.noConflict()中; jQuery(document).ready(function () {});
-
您在
ul列表中使用相同的 IDLevel2。如果您希望这两个项目具有相同的id名称,最好使用class,因为元素 ID 在整个文档中应该是唯一的。
标签: jquery css hover internet-explorer-10