help changing current slideshow code

  • Thread starter GabrielESandoval
  • Start date
G

GabrielESandoval

i currently use the code below to create a slideshow of images. i
edited it so that its not as long. i currently have over 20 images

i want to change it so that the images dont appear in the same order
each time. what would i have to change to make the cycle random???
thanks in advance for the help.

gabriel

-- heres the code --
<script language="JavaScript1.1">
<!--

//specify interval between slide (in mili seconds)
var slidespeed=100

//specify images
var slideimages=new Array("images/slideshow/comp_logo.gif",
"images/slideshow/logo2.gif", "

//specify corresponding links
var slidelinks=new Array("http://www.company.com",
"http://www.mycompany.com/

var newwindow=1 //open links in new window? 1=yes, 0=no

var imageholder=new Array()
var ie=document.all
for (i=0;i<slideimages.length;i++){
imageholder=new Image()
imageholder.src=slideimages
}

function gotoshow(){
if (newwindow)
window.open(slidelinks[whichlink])
else
window.location=slidelinks[whichlink]
}
function openwindow()
{
window.open("http://cmis.tamu.edu/web/video.asp","my_new_window","toolbar=no,
location=no, directories=no, status=no, menubar=no, scrollbars=no,
resizable=no, copyhistory=no, width=700, height=600")
}
//-->
</script>
 
P

pegasusflightresources

i currently use the code below to create a slideshow of images. i
edited it so that its not as long. i currently have over 20 images

i want to change it so that the images dont appear in the same order
each time. what would i have to change to make the cycle random???
thanks in advance for the help.

gabriel

-- heres the code --
<script language="JavaScript1.1">
<!--

//specify interval between slide (in mili seconds)
var slidespeed=100

//specify images
var slideimages=new Array("images/slideshow/comp_logo.gif",
"images/slideshow/logo2.gif", "

//specify corresponding links
var slidelinks=new Array("http://www.company.com",
"http://www.mycompany.com/

var newwindow=1 //open links in new window? 1=yes, 0=no

var imageholder=new Array()
var ie=document.all
for (i=0;i<slideimages.length;i++){
imageholder=new Image()
imageholder.src=slideimages
}

function gotoshow(){
if (newwindow)
window.open(slidelinks[whichlink])
else
window.location=slidelinks[whichlink]
}
function openwindow()
{
window.open("http://cmis.tamu.edu/web/video.asp","my_new_window","toolbar=no,
location=no, directories=no, status=no, menubar=no, scrollbars=no,
resizable=no, copyhistory=no, width=700, height=600")
}
//-->
</script>


Dear sir,
You will have to either implement an algorithm in order to randomize
the pattern, or else you can make "i" with the random number (multiply
the result of this function by ten) and ceiling functions, along with
an if loop that makes sure that "i", being a random number, is not
larger than the index of the last image in the array.

I have the honor to remain your most humble and Ob't Sv't in our war
against the King.
 
D

Dr John Stockton

JRS: In article <[email protected]>
, dated Thu, 6 Jul 2006 08:43:31 remote, seen in
news:comp.lang.javascript, (e-mail address removed) <pegasusflig
(e-mail address removed)> posted :
You will have to either implement an algorithm in order to randomize
the pattern, or else you can make "i" with the random number (multiply
the result of this function by ten) and ceiling functions, along with
an if loop that makes sure that "i", being a random number, is not
larger than the index of the last image in the array.

I have the honor to remain your most humble and Ob't Sv't in our war
against the King.

Incompetent advice; you should by now have read the newsgroup FAQ.

The image URLs are in an array slideimages and will be indexed from 0 to
slideimages.length-1.

A random integer in that range is given by Random(slideimages.length)
where Random in the function in FAQ 4.22.

There is no need to use Math.ceil, and multiplying by 10 is
inappropriate here, nor to loop through any checks.

It is a good idea to understand a topic before giving advice on it.

If course, if the OP is paid per line of code or in proportion to CPU
time used in execution then your method has some advantage.



If the OP's images are wisely named (which at present they appear not to
be) with a numeric part, then the array of names is not needed, since
the name can be computed.
 
P

pegasusflightresources

Dr said:
JRS: In article <[email protected]>
, dated Thu, 6 Jul 2006 08:43:31 remote, seen in
news:comp.lang.javascript, (e-mail address removed) <pegasusflig
(e-mail address removed)> posted :


Incompetent advice; you should by now have read the newsgroup FAQ.

The image URLs are in an array slideimages and will be indexed from 0 to
slideimages.length-1.

A random integer in that range is given by Random(slideimages.length)
where Random in the function in FAQ 4.22.

There is no need to use Math.ceil, and multiplying by 10 is
inappropriate here, nor to loop through any checks.

It is a good idea to understand a topic before giving advice on it.

If course, if the OP is paid per line of code or in proportion to CPU
time used in execution then your method has some advantage.



If the OP's images are wisely named (which at present they appear not to
be) with a numeric part, then the array of names is not needed, since
the name can be computed.

Dear sir,
Thank you for the correction. I had not known of the parameter in the
random function.

I have the honor to remain your most humble and Ob't Sv't in our war
against the King
 
D

Dr John Stockton

JRS: In article <[email protected]>,
dated Mon, 10 Jul 2006 10:45:15 remote, seen in
news:comp.lang.javascript, (e-mail address removed) <pegasusflig
(e-mail address removed)> posted :
Lines: 72
Dr John Stockton wrote:
Thank you for the correction. I had not known of the parameter in the
random function.

From your article formatting, it is evident that you have still not
studied the newsgroup FAQ. Only a fool would presume to give advice
without having done so, checking each time what the FAQ actually says.
 
G

GabrielESandoval

i know this topic has been dead for awhile but i have a followup
question. instead of making the images go in a random order is there a
way to make the starting point random instead instead of starting on
image 1.

thanks for all the help ive gotten so far on the topic

gabriel
 
P

pegasusflightresources

i know this topic has been dead for awhile but i have a followup
question. instead of making the images go in a random order is there a
way to make the starting point random instead instead of starting on
image 1.

thanks for all the help ive gotten so far on the topic

gabriel

Dear sir,
That is, in effect, what the whole concept of using the Random function
is. It creates a random positive number (in the case that you put a
parameter, it uses the parameter as a boundary) and you can use that
random number as the start. If you want the starting point to be
random, but the rest of the order not to be, then you will have to have
the index of the array start with a number generated by the random
function, but then have the random number increment each time the
timeout, or interval goes off. I'm sorry for not putting any code in
here, but I hope you get the concept.

I have the honor to remain your most humble and Ob't Sv't in our war
against the King.
 
D

Dr John Stockton

JRS: In article <[email protected]>
, dated Thu, 13 Jul 2006 11:51:59 remote, seen in
news:comp.lang.javascript, (e-mail address removed) <pegasusflig
(e-mail address removed)> posted :
Neater to start with image 0.
Dear sir,
That is, in effect, what the whole concept of using the Random function

There is no Random function in Javascript as defined by ECMA or
implemented generally by manufacturers. There is a Method, Math.random;
a function Random is given in the newsgroup FAQ, but you did not cite
that.
is. It creates a random positive number (in the case that you put a

It creates a random non-negative integer ... Zero is not positive.
parameter, it uses the parameter as a boundary) and you can use that

Boundary is hardly a good description, since it cannot be reached.
random number as the start. If you want the starting point to be
random, but the rest of the order not to be, then you will have to have
the index of the array start with a number generated by the random
function,

Array indices start at zero; what you have written does not express your
probable meaning.
but then have the random number increment each time the
timeout, or interval goes off.

That's not good enough for an array of finite length unless the run is
correspondingly limited.
I'm sorry for not putting any code in
here,

That's probably your wisest move.
but I hope you get the concept.


<URL:http://www.merlyn.demon.co.uk/js-date2.htm#RC> does substantially
what the OP wants - between "Dynamic" & "Graphic" - except that the mane
of the image is generated by concatenation in GetFigs and the images are
loaded into Figs for run-time indexing.
 
P

pegasusflightresources

Dr said:
JRS: In article <[email protected]>
, dated Thu, 13 Jul 2006 11:51:59 remote, seen in
news:comp.lang.javascript, (e-mail address removed) <pegasusflig
(e-mail address removed)> posted :

Neater to start with image 0.


There is no Random function in Javascript as defined by ECMA or
implemented generally by manufacturers. There is a Method, Math.random;
a function Random is given in the newsgroup FAQ, but you did not cite
that.

And yet you cited it in your response to my use of the random function
corresponding to the random method of Math without the parameter. Is
that not enough of a citation?
It creates a random non-negative integer ... Zero is not positive.


Boundary is hardly a good description, since it cannot be reached.

That all depends on your visualization, or definition of a boundary.
Array indices start at zero; what you have written does not express your
probable meaning.

I was speaking of the index that is the starting point of the loop for
the slideshow. This would use an integer and therefore put it as the
selected index to start the slideshow at. True, array indices start at
zero, but array indices can be used to select, therefore letting the
starting point of the _slideshow_ be the index generated by the Random
method/function.
That's not good enough for an array of finite length unless the run is
correspondingly limited.

In effect, the manner I am telling the OP of is exactly that. "of
finite length" and "correspondingly limited".
That's probably your wisest move.



<URL:http://www.merlyn.demon.co.uk/js-date2.htm#RC> does substantially
what the OP wants - between "Dynamic" & "Graphic" - except that the mane
of the image is generated by concatenation in GetFigs and the images are
loaded into Figs for run-time indexing.

I still don't understand why people must insult or demote others
because of simple mistakes. Everyone makes them, and the more you
make, the more successful you will be. If you wish for proof, I will
willingly answer you as long as you e-mail me.

I have the honor to remain your most humble and Ob't Sv't in our war
against the King.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,982
Messages
2,570,185
Members
46,736
Latest member
AdolphBig6

Latest Threads

Top