Link to home
Start Free TrialLog in
Avatar of mvanthof
mvanthof

asked on

if (Math.random() > 0.5)

Hello,

I have this small script that change on refresh. I want to make sure that it displays 50 / 50% to the visitors.

is if (Math.random() > 0.5) than correctly chosen?
is there a better way to do this?
<html > 
<head> 
<title>Random Images</title> 
<script type="text/javascript"> 
//<![CDATA[ 
var images1="image_1.jpg"; 
var imglink1="http://www.test1.com";
var alt1="test1";
 
var images2="image_2.jpg"; 
var imglink2="http://www.test2.com";
var alt2="test2";
 
function randomImage() { 
if (Math.random() > 0.5) {
document.getElementById("random").src=images1; 
document.getElementById("link").href=imglink1; 
document.getElementById("random").alt=alt1; 
}
else {
document.getElementById("random").src=images2; 
document.getElementById("link").href=imglink2; 
document.getElementById("random").alt=alt2; 
}
} 
onload=randomImage; 
//]]> 
</script> 
</head> 
<body > 
<div id="container"> 
<a href="" id="link"><img id="random" src="" alt=""/></a> 
</div> 
</body> 
</html>

Open in new window

Avatar of David S.
David S.
Flag of United States of America image

I'd use ">=" instead of just ">" because the range is between 0 (inclusive) and 1 (exclusive).

No, there is no better way to do it.
ASKER CERTIFIED SOLUTION
Avatar of Michel Plungjan
Michel Plungjan
Flag of Denmark image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial