PDA

View Full Version : Featured Content Slider v2.4 pause 1 slide longer than others



gregt
10-21-2009, 01:31 PM
1) Script Title: Featured Content Slider v2.4

2) Script URL (on DD): http://www.dynamicdrive.com/dynamicindex17/featuredcontentslider.htm

3) Describe problem: I need to pause the first slide longer than the rest. I would assume that i would do this in the onchange portion of the javascript in the init function, but what is the syntax to do so?

jscheuer1
10-22-2009, 11:47 AM
This is actually a bit more complex than may at first appear, but after a bit of trial and error this looks pretty good. I found it best to add another function - prolong, to deal with the first time around, here's an example of what to do:


featuredcontentslider.init({
id: "slider1", //id of main slider DIV
contentsource: ["inline", ""], //Valid values: ["inline", ""] or ["ajax", "path_to_file"]
toc: "#increment", //Valid values: "#increment", "markup", ["label1", "label2", etc]
nextprev: ["Previous", "Next"], //labels for "prev" and "next" links. Set to "" to hide.
revealtype: "click", //Behavior of pagination links to reveal the slides: "click" or "mouseover"
enablefade: [true, 0.2], //[true/false, fadedegree]
autorotate: [true, 3000], //[true/false, pausetime]
enablepersist: false, //true/false - defaults to false
random: false, //true/false - defaults to false (requires autorotate be set to true with a pausetime)
prolong: function(){
this.contentdivs[0].style.visibility = 'visible';
this.contentdivs[0].style.display = 'block';
this.prolong = function(){};
},
onChange: function(previndex, curindex){ //event handler fired whenever script changes slide
//previndex holds index of last slide viewed b4 current (1=1st slide, 2nd=2nd etc)
//curindex holds index of currently shown slide (1=1st slide, 2nd=2nd etc)
if(!this.autorotate[0] || curindex !== 1) return;
var setting = this;
featuredcontentslider.cleartimer(this, window['fcsautorun' + this.id]);
this.prolong.apply(this);
window['fcsautorun' + this.id] = setTimeout(function(){featuredcontentslider.autorotate(setting);}, this.autorotate[1]);
}
})