如何使 li 元素悬停在动态
How to make dynamic the li element hover
>我有一种方法可以解决我在网站导航中的问题 http://204.197.252.143/~paterson/
,当我悬停链接(li-element)时,背景将设置为灰色,并且前一个元素的背景图像(十字符号)也将隐藏。我的问题是,有没有另一种方法可以动态地制作它?这是我的代码。任何帮助,不胜感激。
<script>
$(document).ready(function () {
$("li#menu-item-21").hover(function () {
$("li#menu-item-23").css("background", "transparent");
});
$("li#menu-item-21").mouseleave(function () {
$("li#menu-item-23").css("background", "url(http://site.com/
~paterson/wp-content/themes/patersons/img/cross.png) no-repeat right");
});
});
</script>
<script>
$(document).ready(function () {
$("li#menu-item-23").hover(function () {
$("li#menu-item-22").css("background", "transparent");
});
$("li#menu-item-23").mouseleave(function () {
$("li#menu-item-22").css("background", "url(http://site.com/
~paterson/wp-content/themes/patersons/img/cross.png) no-repeat right");
});
});
</script>
<script>
$(document).ready(function () {
$("li#menu-item-23").hover(function () {
$("li#menu-item-22").css("background", "transparent");
});
$("li#menu-item-23").mouseleave(function () {
$("li#menu-item-22").css("background", "url(http://site.com/
~paterson/wp-content/themes/patersons/img/cross.png) no-repeat right");
});
});</script>
<script>
$(document).ready(function () {
$("li#menu-item-20").hover(function () {
$("li#menu-item-96").css("background", "transparent");
});
$("li#menu-item-20").mouseleave(function () {
$("li#menu-item-96").css("background", "url(http://site.com/
~paterson/wp-content/themes/patersons/img/cross.png) no-repeat right");
});
});</script>
<script>
$(document).ready(function () {
$("li#menu-item-19").hover(function () {
$("li#menu-item-20").css("background", "transparent");
});
$("li#menu-item-19").mouseleave(function () {
$("li#menu-item-20").css("background", "url(http://site.com/
~paterson/wp-content/themes/patersons/img/cross.png) no-repeat right");
});
});</script>
<script>
$(document).ready(function () {
$("li#menu-item-96").hover(function () {
$("li#menu-item-21").css("background", "transparent");
});
$("li#menu-item-96").mouseleave(function () {
$("li#menu-item-21").css("background", "url(http://site.com/~paterson/
wp-content/themes/patersons/img/cross.png) no-repeat right");
});
});
</script>
就像@juno说的那样......为什么不使用CSS?例如:
li:hover{ attributes to change }
你可以在jQuery中使用.hover()和.prev()来做到这一点。
代码如下:
<script>
$(document).ready(function () {
$("li.menu").hover(function () {
$(this).prev().css("background", "transparent");
}, function(){
$(this).prev().css("background", "url(http://site.com/~paterson/wp-content/themes/patersons/img/cross.png) no-repeat right");
});
});
</script>
稍微
调整一下你的html,使背景图像出现在左侧
。# put the background image on the left of the LI's
.nav-menu li { background: url("http://204.197.252.143/~paterson/wp-content/themes/patersons/img/cross.png") no-repeat center left;
# remove the background image from the first element
.nav-menu li:first-child { background: none }
#when you're hovering, remove the background
.nav-menu li:hover { background: transparent; }
这样的东西可以在没有任何 JS 的情况下工作。
edit:: 当您启动时,请确保您的图像路径相对于 CSS 文档 - url(../img/cross.png) - 而不是硬编码到 IP 地址。
相关文章:
- 当加载带有hastags的动态内容-URI时,Jquery-悬停效果不起作用
- 动态加载的缩略图显示其他缩略图的全尺寸图像,而不是自己的缩略图(使用javascript悬停效果)
- 悬停样式应该在动态加载多级菜单时保持单击状态
- jQuery-悬停在动态创建的元素setTimeout上
- 使用 dojo 将鼠标悬停在动态下拉列表选择上时添加工具提示
- 如何在鼠标悬停时动态向标题添加文本
- 通过检查cookie动态更改jQuery“悬停”
- Jquery 插件悬停卡在动态生成的内容中不起作用
- 当我将鼠标悬停在动态创建的行上时,行中的选择元素(标签)选项无法正确下拉.火狐问题
- 悬停打开 DIV 时,DIV 内容应从单独的 URL 动态加载
- 获取嵌套网格视图中图像鼠标悬停的动态详细信息
- 如何使 li 元素悬停在动态
- 平板电脑友好的悬停工具提示,显示基于javascript函数结果的动态文本
- 悬停在动态添加的表行上的效果
- 悬停函数不为每个条目动态工作
- 在鼠标悬停上动态创建的谷歌地图只有第一次才能正确显示
- 当鼠标悬停在孩子动态创建的地方时,防止onmouseout
- jQuery为什么动态添加的图像在悬停时不会显示/隐藏
- 在父元素的悬停出口动态实例化/暂停Youtube视频(iFrame API)
- 如何在Firebug中检查网页的动态悬停元素