Javascript 如何消除jQuery.hover()方法中的延迟
我试图让我的导航元素在文档滚动时改变颜色,我还想让悬停状态动态地改变颜色。但是有一个延迟,我必须等待几秒钟才能悬停并改变颜色。我可以取消延误吗?或者更好,当我在菜单上悬停时,我可以通过滚动来改变悬停的颜色吗?我觉得我离解决方案太近了,但却找不到 以下是jQuery代码:Javascript 如何消除jQuery.hover()方法中的延迟,javascript,jquery,css,hover,delay,Javascript,Jquery,Css,Hover,Delay,我试图让我的导航元素在文档滚动时改变颜色,我还想让悬停状态动态地改变颜色。但是有一个延迟,我必须等待几秒钟才能悬停并改变颜色。我可以取消延误吗?或者更好,当我在菜单上悬停时,我可以通过滚动来改变悬停的颜色吗?我觉得我离解决方案太近了,但却找不到 以下是jQuery代码: $(document).ready(function () { $(document).scroll(function () { var h = $(window).scrollTop() / $(doc
$(document).ready(function () {
$(document).scroll(function () {
var h = $(window).scrollTop() / $(document).height() * 360;
if (h <= 180) {
hhover = h + 180;
} else {
hhover = h - 180;
}
$("a").css({
"color":"hsl(" + h + ",100%,50%)","transition":"0.2s ease"});
$("a").hover(
function () {
$(this).css(
"color", "hsl(" + hhover + ",100%,50%)");
},
function () {
$(this).css(
"color", "hsl(" + h + ",100%,50%)");
});
});
});
$(文档).ready(函数(){
$(文档)。滚动(函数(){
var h=$(窗口).scrollTop()/$(文档).height()*360;
如果(h在CSS代码中:
.nav-links a:hover {
color: hsl(180,100%,50%);
transition: ease;
}
从javascript代码和样式中删除所有CSS转换定义。对于这些不具体的问题,很抱歉。您可以忘记第二个问题。即使我删除了.2s转换,在我完成滚动之间仍有延迟。以下是更新的jsFiddle:尝试删除“转换”:“0.2s轻松”
当你在hover
callback中设置样式时,从导航链接中删除转换a:hover CSS规则->我已经更新了我的小提琴,但即使删除了.2s转换,仍然会有延迟。下面是链接:这是一个演示我的jsFiddle结果的短视频:tinypic.com/r/346me85/8当我在链接上悬停时,我看不到延迟。颜色变化es非常快这是一段演示我的JSFIDLE结果的短片: