我发现这段代码片段允许我根据所讨论的ID是否被悬停而淡化到某个值。但是,我无法理解有问题的代码段的一部分,并希望澄清。
这是代码段:
$(document).ready(function() {
$(document).ready(function () {
$("#food-roulette").hover(function () {
this.toggle = !this.toggle;
$("#food-roulette").stop().fadeTo(100, this.toggle ? 0.4 : 1);
});
});
});
我有两个问题。
1)什么是切换?这是JQuery库中的布尔变量吗?它是如何使用的。
2)this.toggle = !this.toggle
。这条线让我感到困惑。根据我的假设,切换最初是正确的,只要我将鼠标悬停在按钮上,切换就会设置为false,因此通过三元操作,按钮不透明度应为1,但它为0.4。所以从某种意义上说,它正在逆向工作。如果我将this.toggle = !this.toggle
行放在$("#food-roulette").stop().fadeTo(100, this.toggle ? 0.4 : 1);
之后,那么它会在按钮褪色的情况下反向工作,直到我将鼠标悬停在它上面。
所以有人可以向我解释这些方面的逻辑以及为什么它的工作方式。非常感激。