基本上,我有 2 个完全相同的列表。当我将鼠标悬停在其中一个列表上时,我希望两个列表中的元素都稍微不透明。
我多次使用 JavaScript;但是,不是最近。在我相对熟悉 JavaScript 之前,我一直拒绝使用 JQuery。现在我想我会尝试重新制作我刚才制作的东西,但我不完全确定我做的是否正确。
我有这段代码,它应该在 ul 中找到所有 li 元素,其中包含一类 navlist,其文本与鼠标悬停的元素相匹配,并将其不透明度设置为 0.7。不幸的是,这不起作用。任何关于原因的想法将不胜感激。
$(".NavList li:contains('" + $(lbutt).text() + "')").css("opacity:0.7;");
编辑: 此代码在一个函数内。当鼠标悬停在链接上时,它会将“this”传递给 lbutt。
编辑#2: 谷歌开发者控制台不会抛出任何错误。
编辑#3: 答案:
$(".NavList li:contains('" + $(lbutt).text() + "')").css("opacity","0.7");
最佳答案
我制作了一个 jsfiddle,展示了如何在这里做类似的事情: http://jsfiddle.net/AAvDN/
HTML:
<ul class="hoverme">
<li>one</li>
<li>two</li>
</ul>
<ul class="navlist">
<li>one</li>
<li>two</li>
</ul>
JavaScript:
$(".hoverme li").hover(function() {
var what = $(this).text();
$(".navlist li:contains('" + what + "')").css("color", "red");
}, function() {
$(".navlist li").css("color", "black");
});
我看到的主要语法错误是您使用的是 .css("opacity:0.7")
而不是 .css("opacity", "0.7")
.
关于javascript - JQuery:语法帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19615482/