0

我正在使用两个锚标签:“previous-slide-collections”和“next-slide-collections”。下一个锚点起作用,而前一个锚点不起作用。

JavaScript:

$("#next-slide-collections").click((function(){
        //alert('hi');
    var counter = 0;
    return function()
    {
       $("#div" + counter).hide("fast");
       counter = (counter % 3) + 1;
       $("#div" + counter).show("fast");
    }
 })());

$("#previous-slide-collections").click((function(){
    //alert('hi');
    var counter = 0;
    return function()
    {
       $("#div" + counter).hide("fast");
       counter = (counter - 1);
       $("#div" + counter).show("fast");
    }
})());

HTML:

<div id="div1"></div>
<div id="div2"></div>
<div id="div3"></div>
<a id="previous-slide-collections"></a>
<a id="next-slide-collections"></a>
4

1 回答 1

0

您的下一个和上一个按钮都使用自己的计数器变量。但是,您的下一个按钮应该可以工作,因为您上一个按钮的计数器从 0 开始,单击它将转到 -1,这将选择 0 个元素。要确认,请将您以前的计数器更改为从 3 开始,您会看到它做了一些事情。

让他们共享相同的变量,它应该工作(大部分)。

var counter = 0;
$("#next-slide-collections").click(function()
    {
       $("#div" + counter).hide("fast");
       counter = (counter % 3) + 1;
       $("#div" + counter).show("fast");
    }
);

$("#previous-slide-collections").click(function()
    {
       $("#div" + counter).hide("fast");
       counter = (counter - 1);
       $("#div" + counter).show("fast");
    }
);

您仍然必须考虑在第一个 div 上单击 prevous 和在最后一个 div 上单击 next。

于 2013-02-22T20:08:06.970 回答