我正在使用响应式网页设计,我想在页面中滑动一些图像。我尝试了一些插件,但插件的问题是它使用了width和height属性,有些还指定了绝对位置。所以我想用js自己改变图像的src并且工作正常,但是我可以给它一些过渡效果吗?
我所做的是:
var i =0;
var total =2;
window.setInterval(function(){
show_hide();
}, 1000);
function show_hide()
{
var img=$('.image-holder img, .image-holder2 img');
//alert(img.length);
if(i%2==0)
{
img[0].src='http://digimind.com/blog/wp-content/uploads/2012/02/number2c.png';
img[1].src='http://digimind.com/blog/wp-content/uploads/2012/02/number2c.png';
i=0;
}
else
{
img[0].src='http://healthystartups.com/storage/600px-MA_Route_1.png?__SQUARESPACE_CACHEVERSION=1319542839834';
img[1].src='http://healthystartups.com/storage/600px-MA_Route_1.png?__SQUARESPACE_CACHEVERSION=1319542839834';
}
i++;
}
我的HTML
<div class="image-holder" >
<img src="http://healthystartups.com/storage/600px-MA_Route_1.png?__SQUARESPACE_CACHEVERSION=1319542839834" />
</div>
<div class="image-holder2" >
<img src="http://healthystartups.com/storage/600px-MA_Route_1.png?__SQUARESPACE_CACHEVERSION=1319542839834" />
</div>
答案 0 :(得分:1)
回答标题,在更改src时给出fadeIn / fadeOut很简单,只需让元素fadeOut,更改src并让它再次淡入。
另外,我想指出,使用jQuery,迭代这样的类,破坏了使用它自己的选择器“.each()
”的目的
$('.image-holder img, .image-holder2 img').each(function() {
$(this).fadeOut(200,function() {
$(this).attr('src', 'http://digimind.com/blog/wp-content/uploads/2012/02/number2c.png');
$(this).fadeIn(200);
});
});
答案 1 :(得分:0)
将jQuery与animate()
一起使用。您还可以在其中一个图片上运行show(N ms)
,在另一个图片上运行hide(N ms)
。您还可以选择如何使用效果显示/隐藏图像(如淡入淡出和淡出)。
另外,请查看http://api.jquery.com/fadeIn/和http://api.jquery.com/fadeOut/