需要Javascript重复/循环帮助
我有以下javascript需要Javascript重复/循环帮助,javascript,jquery,Javascript,Jquery,我有以下javascript $('.goto1').click(function() { $('#mttslider').cycle(0); return false; }); 我希望它像这样重复: $('.goto1').click(function() { $('#mttslider').cycle(0); return false; }); $('.goto2').click(function() { $('#mttslide
$('.goto1').click(function() {
$('#mttslider').cycle(0);
return false;
});
我希望它像这样重复:
$('.goto1').click(function() {
$('#mttslider').cycle(0);
return false;
});
$('.goto2').click(function() {
$('#mttslider').cycle(1);
return false;
});
$('.goto3').click(function() {
$('#mttslider').cycle(2);
return false;
});
etc...
这样我就可以得到每个触发器-.goto(n)-来触发循环函数
任何帮助都将不胜感激
$('[class^=goto]').click(function() {
var index = parseInt( this.className.replace('goto',''), 10 );
$('#mttslider').cycle(index);
return false;
});
如果您的元素没有类
,除了goto1、goto2
等之外,这将起作用
var listener = function(index){
var selector = '.goto'+ index;
$(selector).click(function() {
$('#mttslider').cycle(index-1);
return false;
});
}
现在您可以从i到n调用listener函数来注册新的事件侦听器,并使用变量索引值调用cycle函数
e、 g:
首先,假设您知道
n
的范围
我可能会这样做:
var slider = $('#mtslider');
for(var i=1; i<=n; i++)
{
(function(j){
$('.goto' + j).on('click', function(){
slider.cycle(j)
});
})(i);
}
给你所有的
goto#
项目另一个通用goto
类。干得好。我在做别的事情,但这更好。
var slider = $('#mtslider');
for(var i=1; i<=n; i++)
{
(function(j){
$('.goto' + j).on('click', function(){
slider.cycle(j)
});
})(i);
}
$('class~="goto"]').on('click', function(){
var i = /goto(\d+)/.exec(this.className)[1];
slider.cycle(i);
});