我创建了一个函数,以便当用户将鼠标悬停在图像上时,图像不透明度降低,文本的可见性变得可见而不隐藏。我使用循环来为多个类应用此功能,但循环并没有按照我希望的方式进行。我不知道为什么。在JQuery中循环并没有达到我想要的效果
这就是我想要它做的
$(document).ready(function(){
var classes = [".col0",".col1", ".col2", ".col3", ".col4", ".col5", ".col6", ".col7", ".col8"]
$(classes[0]).hover(function(){
$(classes[0]).css("opacity", "0.5");
}, function(){
$(classes[0]).css("opacity", "1");
});
$(classes[1]).hover(function(){
$(classes[1]).css("opacity", "0.5");
}, function(){
$(classes[1]).css("opacity", "1");
});
..... And continue until it finishes all the variables
});
我试图用这样的循环。上述解决方案的工作,但它是很多重复,所以我想使用循环,但循环不起作用。
$(document).ready(function(){
var classes = [".col0",".col1", ".col2", ".col3", ".col4", ".col5", ".col6", ".col7", ".col8"]
for(i = 0; i < 8; i++){
$(classes[i]).hover(function(){
$(classes[i]).css("opacity", "0.5");
}, function(){
$(classes[i]).css("opacity", "1");
});
}
});
我建议增加一个通用类,所有这些元素如果可能的话,而不是循环。 @Geeky - 他改变CSS的方式是完全合法的,而且你的语法是错误的。对象使用':'而不是逗号,如果您只更改一个属性,对象也不需要。 – Santi