.stop()会破坏渐变元,而黄色框不会'看起来不太合适
.stop() breaks the fadein and the yellow box doesn't appear proper
如果我快速地将光标放在红框上,它只会停止淡入并将操作一分为二。如果我根本不使用.stop()函数,jquery会尝试完成剩余的操作(我之前很快就悬停并退出了框)。有人知道我应该在这里做什么吗?谢谢
http://jsfiddle.net/dkLhC/1
$(document).ready(function(){
$(".box1").mouseenter(function(){
$(".box2").stop().fadeIn();
});
$(".box1").mouseleave(function(){
$(".box2").stop().fadeOut();
});
});
JSFiddle
JQuery函数fadeTo()似乎也像css转换一样工作,但转换无疑是更好的选择。
$(document).ready(function(){
$(".box1").mouseenter(function(){
$(".box2").stop().fadeTo(1000, 1);
});
$(".box1").mouseleave(function(){
$(".box2").stop().fadeTo(1000, 0);
});
});
这不是问题的直接答案,而是另一种解决方案。您可以使用CSS transition
代替jQuery来执行淡入淡出
.box2
{
opacity: 0;
transition: opacity 2s;
}
.box1:hover + .box2 {
opacity: 1;
transition: opacity 2s;
}
参见JSFiddle
Use.finish():
演示
$(document).ready(function(){
$(".box1").mouseenter(function(){
$(".box2").finish().fadeIn();
});
$(".box1").mouseleave(function(){
$(".box2").finish().fadeOut();
});
});
经过一些研究,我发现正确的答案是
true, false
(对于参数clearQueue, jumpToEnd
)
http://jsfiddle.net/q6d57/11/
$(document).ready(function(){
$(".box1").mouseenter(function(){
$('.box2').stop(true, false).fadeIn(3000);
});
$(".box1").mouseleave(function(){
$('.box2').stop(true, false).fadeOut(3000);
});
});
相关文章:
- Steam Web API:I'我不知道该如何处理这个看起来像哈希的url来生成图像
- 如何使删除线看起来像x
- Twitter Bootstrap 2.1.0子菜单在Responsive上看起来很混乱
- 用javascript创建一个看起来正常分布的模式
- PHP函数的返回看起来如何对AJAX和PHP有效
- 如何使Codeschools棱角分明的一面看起来相似
- HTML/JavaScript拖动&Drop-是否可以使重影图像*NOT*看起来'冲洗掉'
- 未捕获的语法错误:意外的令牌非法?看起来不错
- NodeJS readline有时会打印回第一个输入行(但并不总是,看起来是随机的)
- 如何检查html是否看起来'空'
- 看起来第一个console.log是'It’不太对
- 使用 CSS 或 javascript/jQuery,我会使用哪种方法来使我的网站的导航栏看起来更 3d-ish
- 如何使用CSS或JQuery使整个网页看起来更小(就像Chrome的缩小功能一样)
- 是否可以使用 DIV 而不是 iFrame,以便内容看起来像在同一页面中
- "消息:应为')'"但事实并非如此;看起来不对
- 如何使用python将大量unicode隐藏为char,使其看起来像字符串
- 相同的css和HTML代码,但在两页上看起来不同
- 如何使许多jQuery ajax调用看起来很漂亮
- .stop()会破坏渐变元,而黄色框不会'看起来不太合适
- d3js v4:我如何应用力到节点的点击,使它看起来像一个渐变