使用JQuery旋转文本会闪烁
Rotating text using JQuery is flickering
我创建了一个文本旋转器,它使用速度和间隔来确定旋转文本的速度和时间。一切似乎都很好,只是我唯一的问题是过渡之间的闪烁。换言之,我可以把新旧条目放在一起看。有人能帮我避免这种情况吗?
我的JSFIDDLE在这里
(function($) {
$(document).ready(function(){
//<![CDATA[
(function($) {
$.fn.rotator = function(settings) {
settings = jQuery.extend({
interval: 5000,
speed:800,
}, settings);
return this.each(function() {
var $t = $(this),
$item = $t.children().addClass('item').hide();
$t.addClass('rotator');
if ($item.length > 1) {
$item.first().addClass('current').fadeIn(settings.speed);
setInterval(function() {
var c = $t.find('.current');
if (c.next().length === 0) {
c.removeClass('current').fadeOut(settings.speed);
$item.first().addClass('current').fadeIn(settings.speed);
} else {
c.removeClass('current').fadeOut(settings.speed).next().addClass('current').fadeIn(settings.speed);
}
}, settings.interval);
}
});
};
})(jQuery);
// Execute here!
$(function() {
$('#slider').rotator();
});
//]]>
});
})(jQuery);
将所有内容放入fadeOut()
的回调函数中效果良好:
c.fadeOut(settings.speed, function () {
$(this).removeClass('current')
.next().addClass('current')
.fadeIn(settings.speed)
});
Fiddle:http://jsfiddle.net/5p7dych6/
更新的Fiddle:http://jsfiddle.net/c6yrzsvr/
相关文章:
- 使用jQuery以红色和黑色闪烁文本
- 创建闪烁“;文本“;在javascript中
- 1种颜色的Javascript闪烁文本更长
- Ajax请求文本在DOM中闪烁
- 如何更改文本区域中闪烁的光标/插入符号
- 在 HTML 中模拟闪烁的文本光标
- 调用 blur() 时,IE 中文本区域和输入中的光标闪烁
- 闪烁文本几秒钟 - 然后消失
- 在 Javascript 中闪烁文本一次
- 停止闪烁文本 JavaScript
- jquery:闪烁按钮文本会使按钮跳跃
- 闪烁也可以隐藏的文本
- 闪烁的文本和闭包
- HTML所有浏览器的闪烁文本,但位于正文的不同区域
- 用自定义字符替换闪烁的文本光标
- HTML5画布闪烁文本
- 我的闪烁文本在闪烁结束后不可见
- 当从csv更新数据时,在setInterval上闪烁文本
- 鼠标悬停时闪烁文本
- 在HTML文档上显示闪烁文本光标