Javascript jQuery ui stop()动画导致样式粘滞
我有一个无序的列表,里面有div。当其中一个悬停在上面时,其他的会应用一个类,使它们稍微淡出Javascript jQuery ui stop()动画导致样式粘滞,javascript,jquery,html,css,jquery-ui,Javascript,Jquery,Html,Css,Jquery Ui,我有一个无序的列表,里面有div。当其中一个悬停在上面时,其他的会应用一个类,使它们稍微淡出 <ul class="three_up tiles"> <li id="ember283" class="ember-view questioncontainer"></li> <li id="ember293" class="ember-view questioncontainer"></li> <li id="
<ul class="three_up tiles">
<li id="ember283" class="ember-view questioncontainer"></li>
<li id="ember293" class="ember-view questioncontainer"></li>
<li id="ember298" class="ember-view questioncontainer"></li>
<li id="ember299" class="ember-view questioncontainer"></li>
<li id="ember300" class="ember-view questioncontainer"></li>
<li id="ember301" class="ember-view questioncontainer"></li>
<li id="ember302" class="ember-view questioncontainer"></li>
</ul>
出现的问题是,当用户快速浏览它们时,有些人会在某一点上坚持使用它们的样式
这里有一把小提琴:
我的解决方案应该是什么?使用以“完成”值结束当前动画,否则动画属性将保留与该时刻相同的值
查看的jumpToEnd
参数
演示:使用,以便当前动画以“完成”值结束,否则动画属性将保留与该时刻相同的值
查看的jumpToEnd
参数
演示:使用,以便当前动画以“完成”值结束,否则动画属性将保留与该时刻相同的值
查看的jumpToEnd
参数
演示:使用,以便当前动画以“完成”值结束,否则动画属性将保留与该时刻相同的值
查看的jumpToEnd
参数
演示:尝试以下操作:在Jquery中使用hover()
,在添加和删除类时使用ToggleClass
$(".questioncontainer").hover(function() {
$(this).siblings().toggleClass("nofocus");
});
尝试以下操作:在Jquery中使用hover()
,在添加和删除类时使用ToggleClass
$(".questioncontainer").hover(function() {
$(this).siblings().toggleClass("nofocus");
});
尝试以下操作:在Jquery中使用hover()
,在添加和删除类时使用ToggleClass
$(".questioncontainer").hover(function() {
$(this).siblings().toggleClass("nofocus");
});
尝试以下操作:在Jquery中使用hover()
,在添加和删除类时使用ToggleClass
$(".questioncontainer").hover(function() {
$(this).siblings().toggleClass("nofocus");
});
问题是,当您使用制作动画的
.addClass
版本时,在动画完成之前,它不会将类添加到元素中。如果未添加该类,则对removeClass
的调用将不会执行任何操作
正如@ArunPJohny所指出的,您可以使用.stop(true,true)
将动画跳到末尾,以便添加类。但这也有它自己的问题,因为你不想要视觉效果
也许您不应该使用类,而应该只设置不透明度的动画。这样,动画在中间停止和倒退是很好的。
var $containers = $(".questioncontainer");
$containers.mouseenter(function () {
var $container = $(this);
$container.stop().animate({ opacity: 1.0 }, 500);
$container.siblings().stop().animate({ opacity: 0.2 }, 500);
});
$containers.mouseleave(function () {
$containers.stop().animate({ opacity: 1.0 }, 500);
});
问题在于,当您使用制作动画的
.addClass
版本时,在动画完成之前,它不会将类添加到元素中。如果未添加该类,则对removeClass
的调用将不会执行任何操作
正如@ArunPJohny所指出的,您可以使用.stop(true,true)
将动画跳到末尾,以便添加类。但这也有它自己的问题,因为你不想要视觉效果
也许您不应该使用类,而应该只设置不透明度的动画。这样,动画在中间停止和倒退是很好的。
var $containers = $(".questioncontainer");
$containers.mouseenter(function () {
var $container = $(this);
$container.stop().animate({ opacity: 1.0 }, 500);
$container.siblings().stop().animate({ opacity: 0.2 }, 500);
});
$containers.mouseleave(function () {
$containers.stop().animate({ opacity: 1.0 }, 500);
});
问题在于,当您使用制作动画的
.addClass
版本时,在动画完成之前,它不会将类添加到元素中。如果未添加该类,则对removeClass
的调用将不会执行任何操作
正如@ArunPJohny所指出的,您可以使用.stop(true,true)
将动画跳到末尾,以便添加类。但这也有它自己的问题,因为你不想要视觉效果
也许您不应该使用类,而应该只设置不透明度的动画。这样,动画在中间停止和倒退是很好的。
var $containers = $(".questioncontainer");
$containers.mouseenter(function () {
var $container = $(this);
$container.stop().animate({ opacity: 1.0 }, 500);
$container.siblings().stop().animate({ opacity: 0.2 }, 500);
});
$containers.mouseleave(function () {
$containers.stop().animate({ opacity: 1.0 }, 500);
});
问题在于,当您使用制作动画的
.addClass
版本时,在动画完成之前,它不会将类添加到元素中。如果未添加该类,则对removeClass
的调用将不会执行任何操作
正如@ArunPJohny所指出的,您可以使用.stop(true,true)
将动画跳到末尾,以便添加类。但这也有它自己的问题,因为你不想要视觉效果
也许您不应该使用类,而应该只设置不透明度的动画。这样,动画在中间停止和倒退是很好的。
var $containers = $(".questioncontainer");
$containers.mouseenter(function () {
var $container = $(this);
$container.stop().animate({ opacity: 1.0 }, 500);
$container.siblings().stop().animate({ opacity: 0.2 }, 500);
});
$containers.mouseleave(function () {
$containers.stop().animate({ opacity: 1.0 }, 500);
});
首先,谢谢。好吧,我后来真的试过了,我应该提到的。注意其他元素是如何闪烁的,或者说是希望?我真的想避免这样。你还有什么建议吗?首先,谢谢你。好吧,我后来真的试过了,我应该提到的。注意其他元素是如何闪烁的,或者说是希望?我真的想避免这样。你还有什么建议吗?首先,谢谢你。好吧,我后来真的试过了,我应该提到的。注意其他元素是如何闪烁的,或者说是希望?我真的想避免这样。你还有什么建议吗?首先,谢谢你。好吧,我后来真的试过了,我应该提到的。注意其他元素是如何闪烁的,或者说是希望?我真的想避免这样。你还有什么建议吗?这实际上与我想要的正好相反——我希望每个
的兄弟姐妹都能将这个类应用到他们身上。@Zaemz。请现在就尝试谢谢Sudharsan-我对它做了进一步修改并尝试:$(this).sibbins().stop(true,true).toggleClass(“nofocus”,500)
这实际上是我想要的,只是稍微有点褪色,但是兄弟元素闪烁很快,这与我的另一个答案的效果相同