jQuery中的循环问题
这就是我的意思 它说的最新消息有一些问题 我想做的是: 加载站点,查看加载栏。(图像在HTML中)加载栏消失,有一段淡入 这就是为什么jQuery中的循环问题,jquery,Jquery,这就是我的意思 它说的最新消息有一些问题 我想做的是: 加载站点,查看加载栏。(图像在HTML中)加载栏消失,有一段淡入 这就是为什么 // Hides the loading image and fadesin content var $latest = $(".latest") $latest .hide(); // Hide Content setTimeout(function(){ $('#loading') .hide(); $
// Hides the loading image and fadesin content
var $latest = $(".latest")
$latest
.hide(); // Hide Content
setTimeout(function(){
$('#loading')
.hide();
$latest.fadeIn();
}
, 3000);
现在,我还想做的是隐藏段落,在另一段中,然后是后面的一段。然后重新启动,再次循环
这就是它的目的:
$latest
.hide()
.first()
.show();
refreshId = setInterval(function() {
next = $(".latest:visible").next();
if (next.length) {
$latest.hide();
next.fadeIn();
} else {
$(".latest")
.hide()
.first()
.fadeIn();
}
}, 3000 );
如您所见,这两个脚本相互冲突,整个事情变得疯狂(图像不断出现)。有办法解决吗?试试这个:
setTimeout(function() {
$('#loading').hide(0,rotator);
}, 3000);
function rotator() {
var $paragraphs = $('#latest-news').find('p.latest'); // the paragraphs
$paragraphs.first().show();
var i = 0;
var looper = setInterval(function() {
var showpara = i++ % $paragraphs.length; // choose next one to show
$paragraphs.not(':eq(' + showpara + ')').hide() // hide others
.end() // back to first selector
.eq(showpara).fadeIn(); // show the next
}, 3000);
}
编辑:更新以处理加载消息,将旋转器封装在函数中,并在加载消息隐藏时触发该函数。图像仍在每次循环后显示您希望加载图形仅显示一次吗?或者在每个段落之间显示?好的,我正在更新我的答案,以包含加载消息的逻辑。几乎!!!看看这个网站,3个都出现了,几秒钟后它开始工作了!此外,图像正在设置动画,不会褪色。您仍然需要
$latest.hide()
内容。更好的是,将css类设置为display:none
,以便隐藏这些段落的默认状态。至于动画——让我们在回调之前添加一个duration参数零(在上面修改)。