图像获胜'Don’一个人淡出后再淡出
images won't fade in after one fades out
我的滑块图像会淡出,但尽管应用了fadeIn,但另一个滑块图像不会出现。我还做了一个函数让它循环,但它不起作用。只有第一个图像淡入淡出,但之后没有其他图像。
js小提琴-http://jsfiddle.net/qust3upk/3/
<div id="slider">
<img id="pic1" src="images/main-banner.png" alt="main banner" class="main_banner">
<img id="pic2" src="images/nutrition-banner.png" alt="nutrition banner" class="main_banner ">
</div>
<a href="#" class="previous">Previous</a>
<a href="#" class="next">Next</a>
<script type="text/javascript">
sliderInt = 1;
sliderNext = 2;
$(document).ready(function(){
$('#slider #pic1').fadeIn(300);
startSlider();
});
function startSlider(){
count = $('#slider img').size();
loop = setInterval(function(){
$('#slider img').fadeOut(300);
$('#slider img#' + sliderNext).fadeIn(300);
sliderInt = sliderNext;
sliderNext = sliderNext + 1;
}, 3000)
}
</script>
您引用的图像id错误。尝试:
$('#slider #pic' + sliderNext).fadeIn(300);
此外,您没有使用您的"count"变量。也更改为:
sliderNext = (sliderNext % count) + 1;
重写此代码块:
loop = setInterval(function(){
$('#slider img').fadeOut(300);
$('#slider img#' + sliderNext).fadeIn(300);
sliderInt = sliderNext;
sliderNext = sliderNext + 1;
}, 3000)
As:
loop = setInterval(function(){
$('#slider img').fadeOut(300);
$('#slider img#pic' + sliderNext).fadeIn(300);
sliderInt = sliderNext;
sliderNext = (sliderNext === count) ? sliderNext = 1 : sliderNext + 1;
}, 3000); //You should have a semicolon here
您可以在fadeOut效果之后立即调用函数,如
$('#slider img').fadeOut(300, function(){
$('#slider img#' +).fadeIn(300);
});
您可以从这里阅读更多详细信息jquery.fadeOut
当然,你也需要有正确的参考资料。
在您的代码中,对img
标记的引用没有正确完成。这就是为什么只有第一个图像淡入淡出然后停止的原因。
这行代码$('#slider img').fadeOut(300);
将淡出所有img
标记。然后这行代码$('#slider img#' + sliderNext).fadeIn(300);
将在id为1(id="1"
)的img
中淡出,但在您的html中它是id="pic1"
。
这是一个有效的代码版本(我确实对它进行了一点修改并修复了这些引用)
<script>
var sliderNext = 1;
jQuery(document).ready(function(){
jQuery('#slider img#pic' + sliderNext).fadeIn(300);
startSlider();
});
function startSlider(){
var count = jQuery('#slider img.main_banner').size();
loop = setInterval(function(){
jQuery('#slider img#pic' + sliderNext).fadeOut(300, function(){
sliderNext += 1;
if(sliderNext > count){
sliderNext = 1;
}
jQuery('#slider img#pic' + sliderNext).fadeIn(300);
});
}, 3000)
}
</script>
相关文章:
- 如何获取一个人的Google+ ID
- Javascript-经理是一个人,但不是经理本身?功能/原型继承
- 淡入,然后使用css过渡淡出一段时间
- Javascript-获取一张用户的随机个人资料图片'的朋友在脸书上
- 我试图用jQuery让每个HTML5元素一次淡出一个
- Jquery 在文本中淡出一段时间
- 我如何使用 php 或 JavaScript 使一个人被重定向到我的移动网站(如果他们在移动设备上)
- 使用jQuery淡出一长串项目
- Trello API访问仅适用于一个人
- 图像获胜'Don’一个人淡出后再淡出
- 自定义功能在谷歌电子表格:一个人之间的分歧和其他组
- 如何使一个人使用下来
- 如何检测一个人是否进入了谷歌地图上的某个区域
- 创建一个人-设置和更改姓和名
- 一个人可以发送的文本数量有限制吗;抓取'使用window.getSelection或document.selec
- 使用变量/函数根据另一个人的选择填充下拉列表
- 一个人什么时候不需要在JavaScript中使用“do”括号
- 为什么一个javascript要“暂停”呢?当另一个人改变形象
- 当我点击标签我可以把信息发给另一个人吗?
- 一个人能做一个真正的帖子吗?不是var=val url类型post)与AJAX XMLHttpRequest