我没有这个工作。我想要通过changeCSS函数解决方案,以便可以传递不同的属性和值。

$("div").on("mouseover", changeCSS("opacity","0.5"));

function changeCSS(prop,val) {
$(this).css(prop, val);
}

最佳答案

它不起作用,因为在changeCSSthis === window中。您还应该传递该元素。如果要提供自定义参数,还需要给.on()一个函数。

$("div").on("mouseover", function () {
    changeCSS(this, "opacity", "0.5"));
});

function changeCSS(elem, prop, val) {
    $(elem).css(prop, val);
}


您可能已经做过,但是您可能还应该有一个mouseleave事件来恢复不透明度。

$("div").on("mouseleave", function () {
    changeCSS(this, "opacity", "1"));
});

08-07 09:48