这是我的javascript
$(document).ready(function(){
$('.frontpageimg').click(function(){
$(this).data('clicked', true);
});
if('.frontpageimg').data('clicked') {
$('#imagepos').slideUp(2000).fadeOut(2000);
$('#contentpos').slideUp(2000).fadeIn(2000);
} else {
$('#imagepos').delay(8000).slideUp(2000).fadeOut(2000);
$('#contentpos').delay(8000).slideUp(2000).fadeIn(5000);
}
});
该网站动画显示延迟后的主要内容,这应该发生。但是,我希望用户能够通过单击图像来跳过等待并激活更短的动画。目前,“其他”部分下的所有内容都有效,但单击图像时没有任何反应。
编辑:我已经改变了代码,试图让事情变得有效,但仍然没有按照我的意愿去做。
$(document).ready(function(){
$('#imagepos').delay(8000).slideUp(2000).fadeOut(2000);
$('#contentpos').delay(8000).slideUp(2000).fadeIn(5000);
});
$('#frontpageimg').click(function(){
$('div:animated').stop();
$('div:animated').clearQueue();
$('#imagepos').slideUp(2000).fadeOut(2000);
$('#contentpos').slideUp(2000).fadeIn(2000);
});
答案 0 :(得分:3)
您正在尝试更改行为中的单击处理程序(在单线程环境中仅调用一次)。
您最好尝试从cluck处理程序中取消或修改动画序列(如果它仍在运行),或者,您可以检查动画序列以查看是否已单击该按钮