我在网页上有一个图像,并在移动jQuery滑块时更改它:
HTML:
<img src="images/flask_image1.png" alt="Isa lab" id="flask" />
滑块HTML:
<div id="slider1">
脚本:
<script>
$(function() {
$( "#slider1" ).slider({
min: 0,
max: 4,
step: 1,
change: function(event, ui){
if(ui.value == 1){
$('#flask').fadeOut(100);
$('#flask').attr('src','images/flask_image2.png');
$('#flask').fadeIn(100);
}else{
$('#flask').attr('src','images/flask_image1.png');
};
}
});
});
</script>
然而,这样做的是图像淡出,变化,然后淡化,其中&#34;工作&#34;但它暂时消失了。
有没有办法让两张图片交叉淡化?
答案 0 :(得分:1)
在这里,我想,安静简单,与实现一些插件相比,更少的代码和难度:http://jsfiddle.net/gcvqr/2/
<强> HTML 强>
<img src="http://macnetized.com/wp-content/uploads/2014/02/Apple_Logo_csh_by_wiimon.png" id="slider">
<button>Change Image</button>
<强>的jQuery 强>
var stopWorking=false;
var firstSrc="http://macnetized.com/wp-content/uploads/2014/02/Apple_Logo_csh_by_wiimon.png";
var secondSrc="http://technicallyeasy.net/wp-content/uploads/2011/04/apple-logo.jpg";
$('button').click(function(){
if(!stopWorking){
stopWorking=true;
$('body').append('<img src="'+$('#slider').attr('src')+'" id="fadingImg">');
$('#fadingImg').css({
'position':'absolute',
'width':'400px',
'height':'400px',
'top':'0px',
'left':'0px'
});
if($('#slider').attr('src')==firstSrc){
$('#slider').attr('src',secondSrc);
}
else{
$('#slider').attr('src',firstSrc);
}
$('#fadingImg').fadeOut(1000,function(){
$('#fadingImg').remove();
stopWorking=false;
});
}
});
注意:强>
为了使其在您的网页中有效,您需要将#fadingImg
滑块img的样式赋予其位置。