我需要在悬停时使用选择器,在悬停外使用变量集来找到特定的链接
I need to use a selector on hover and a variable set outside hover to find a specific link
这对我来说很难解释,所以我会尽我所能。这里有这个代码:
$('#navibar a').hover(function(){
var position = $(this).position();
var width = $(this).width();
$('#underliner').css({'width': '' + width + '','left': position.left});
//$('#underliner').show("slide", { direction: "left" }, 100);
$('#underliner').stop().animate({opacity: 1}, 30).show();
}, function () {
var homePos = $(this).find(attr(activePageHref)).position();
var homeWidth = $(this).find(attr(activePageHref)).width();
//$('#underliner').css({'width': '' + homeWidth + '','left': homePos.left});
//$('#underliner').show("slide", { direction: "left" }, 100);
//$('#underliner').stop().animate({opacity: 1}, 30).show();
alert(activePageHref);
});
activePageHref在此之外设置为已单击的页面。在警报中,它显示正确(例如,假设它的值是"home"。我需要以某种方式将#underline.css的位置和宽度设置为悬停时选择的导航中的页面链接,那么有没有办法"找到"其他的"a"并使用它们?希望在代码中我想做的很明显。这是我的标记:
<ul id="navibar">
<li><a href="home">Home</a></li>
<li><a href="products">Products</a></li>
<li><a href="games">Games</a></li>
<li><a href="store">Store</a></li>
<li><a href="support">Support</a></li>
<li><a href="community">Community</a></li>
</ul>
此外,我知道第一块代码是"大时代"错误的,这只是我决定在这里发帖之前出于愤怒和绝望所做的最后一件事。
使用属性选择器查找href为activePageHref 的链接
$('#navibar a').hover(function(){
var position = $(this).position();
var width = $(this).width();
$('#underliner').css({'width': '' + width + '','left': position.left});
//$('#underliner').show("slide", { direction: "left" }, 100);
$('#underliner').stop().animate({opacity: 1}, 30).show();
}, function () {
var homePos = $(this).parents('#navibar').find('a[href="'+activePageHref+'"]').position();
var homeWidth = $(this).parents('#navibar').find('a[href="'+activePageHref+'"]').width();
//$('#underliner').css({'width': '' + homeWidth + '','left': homePos.left});
//$('#underliner').show("slide", { direction: "left" }, 100);
//$('#underliner').stop().animate({opacity: 1}, 30).show();
alert(activePageHref);
});
首先,您可以通过类似event.target
的东西来选择"a"
第二,将activeClass
添加到目标
第三,通过选择器获取其他a,例如$("ul#navibar li a:not(.activeClass)")
在这里,您将获得数组中那些未激活的a,您可以通过$.each
进行遍历
愿它能帮你一点忙。
相关文章:
- 链接don'由于Javascript悬停效果,无法在移动设备上工作
- 链接悬停css在不浮动时不在表浮动标题中工作
- 有没有一种方法可以让链接不可点击,但仍然可以使用:悬停
- 悬停时将一个链接更改为两个
- 点击悬停区域中的链接会在触摸时立即激活
- 是否可以使用Javascript来“;悬停”;通过链接
- 当主导航链接悬停时,在侧菜单中显示链接
- 悬停链接时添加背景图像
- 如何设置悬停链接上的线的动画
- JavaScript&悬停链接延迟
- 使用带有setTimeout的悬停链接更改图像
- JS悬停链接调用函数,但只有一次
- 显示谷歌地图悬停链接或文本
- 如何显示从悬停链接提取的内容
- 使下划线在悬停链接下拍摄
- Div出现在悬停链接的后面?- Jquery / js
- 在任意页面上鼠标悬停链接时调用函数
- 在React中使用Radium对悬停链接进行样式化
- 获取附加项以检测悬停链接
- 需要JS保持悬停链接活动