请记住,我是 javascript/jquery/stackoverflow 新手。我有一组 JQuery 对象(每个对象都是一张图像)。现在我为数组中的每个项目都有一个单独的函数:
var $photos = [];
$photos.push($('img.one'), $('img.two'), $('img.three'), $('img.four'), $('img.five'), $('img.six'));
$('.thumbnails img.two').click(function(){
$('div#slide-container').fadeIn('fast');
setTimeout(function(){
$('div#slideshow').slideDown('fast');}, 200);
setTimeout(function(){
images[1].fadeIn('fast');}, 500);
});
换句话说,我对数组中的 5 个索引中的每一个都有上述代码。我该如何编写此代码,以便我可以仅使用一个函数而不是六个函数来定位单击的任何照片?因此,我可以直接说“images[i]”,而不是具体的“images[1]”。
这里有一个实时版本的链接:
最佳答案
$('.thumbnails img').click(function(){
var $this = $(this);
$('div#slide-container').fadeIn('fast');
setTimeout(function(){
$('div#slideshow').slideDown('fast');}, 200);
setTimeout(function(){
$this.fadeIn('fast');}, 500); });
我认为你可以使用回调代替 setTimeout
$('.thumbnails img').click(function(){
var $this = $(this);
$('div#slide-container').fadeIn('fast', function(){
$('div#slideshow').slideDown('fast', function(){
$this.fadeIn('fast');
});
});
});
关于javascript - 单击时定位数组中的项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20808765/