我目前正在实现一个带有淡入效果的点击功能,唯一的问题是如果你不立即点击内容已经淡出,因为它在页面加载时开始淡化。
这是我的代码:
$(document).ready(function(){
$('#slide-02').hide();
$('#button').click(function(){
$('#slide-02').fadeIn(1000);
$('#slide-01').hide();
});
var charToReplace = ['s', 'b', 'S', 'B'];
$('#slide-02').html(function (i, v) {
var resultStr = '';
for (var i = 0; i < v.length; i++ ) {
var ch = v.charAt(i);
if ($.inArray(ch, charToReplace) >= 0) {
resultStr += '<span class="hideMe">' + ch + '</span>';
} else {
resultStr += ch;
}
}
return resultStr;
}).find('.hideMe').delay(2000).fadeOut(3000, function(){
$(this).css('opacity', 0).show();
});
//lets bring it all back
setTimeout(function () {
$('#slide-02').find('.hideMe').css('opacity', 0);
}, 5000);
});
这里也是代码的实时模拟:http: //nealfletcher.co.uk/fish/test2/
所以#slide-02
是隐藏的,当点击#button时#slide-02
淡入,字母's'和'b'淡出#slide-02
但我只希望这些字母在可见#slide-02
时开始褪色,并且在页面加载时不开始褪色,因为目前如果您不立即单击按钮,字母已经褪色。
有没有办法只在点击功能实现后才实现这个调用?
然后我将一张接一张地添加更多幻灯片,所以如果可能的话,我希望这个电话可以多次工作?