2012-03-06 76 views
1

因此,我使用动态传送带的这个示例,我试图配置JavaScript以允许它滚动一次,但随后重新开始并停止幻灯片#1:这里是网站:http://www.dynamicdrive.com/dynamicindex4/stepcarousel.htm如何使步骤传送带环绕,然后在幻灯片上停止#1

我试图将autostep参数从true更改为false,但要么永远循环,要么停止在最后一个。

我尝试使用: onslide:()函数

,但我不能找出语法来确定滑块是如何知道最后一张幻灯片是什么。

任何人都可以帮助我吗?

回答

0

答案是张贴在这里: http://www.dynamicdrive.com/forums/showthread.php?t=67842

,但这里是代码:

<script type="text/javascript"> 

stepcarousel.setup({ 
    galleryid: 'mygallery', //id of carousel DIV 
    beltclass: 'belt', //class of inner "belt" DIV containing all the panel DIVs 
    panelclass: 'panel', //class of panel DIVs each holding content 
    autostep: {enable:true, moveby:1, pause:3000}, 
    panelbehavior: {speed:500, wraparound:false, wrapbehavior:'slide', persist:false}, 
    defaultbuttons: {enable: true, moveby: 1, leftnav: ['10/leftnav.gif', -5, 80], rightnav: ['10/rightnav.gif', -20, 80]}, 
    statusvars: ['statusA', 'statusB', 'statusC'], //register 3 variables that contain current panel (start), current panel (last), and total panels 
    contenttype: ['inline'], //content setting ['inline'] or ['ajax', 'path_to_external_file'] 
    **onslide: function(){ 
     var id = 'mygallery', car = stepcarousel.configholder[id]; 
     if(car.currentpanel == car.lastvisiblepanel && !car.hasstopped){ //if we're at the end 
      setTimeout(function(){stepcarousel.stepTo(id, 1);}, car.autostep.pause); //step one more time 
      car.onslide = function(){}; //and stop checking 
     } 
    }** 
}) 

</script> 

那么你也必须改变从stepcarousel.js:

stopautostep:function(config){ 
     clearTimeout(config.steptimer) 
    }, 

到:

stopautostep:function(config){ 
    clearTimeout(config.steptimer); 
    config.hasstopped = true; 
}, 

不能非常感谢John帮助我,希望它能帮助其他人。

相关问题