好吧,我知道这很奇怪,我想也许它与吊装有关,但我不太了解,所以我完全不确定。我基本上有一个石头剪刀布游戏,如果你不选择任何东西,电脑会随机选择。选择您选择的照片后,选择列表的值也会更改。
我的问题是图像并不总是改变,但只有当计算机随机化一个数字并且仅在 Chrome 中。这是jsFiddle 的链接,我也会在这里提供我的代码。
HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Rock-paper-scissers</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<script src="rps.js"></script>
<style type="text/css">
html{
min-height: 100%;
}
body{
height: 100%;
font: 100.01% "Trebuchet MS",Verdana,Arial,sans-serif;
background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#93e1d1), to(#d4c87c));
background-image: -webkit-linear-gradient(left, #93e1d1, #d4c87c);
background-image: -moz-linear-gradient(top, #93e1d1, #d4c87c);
background-repeat: no-repeat;
text-align: center;
}
div#Container {
width: 80%;
margin: 0 auto;
}
div#InnerLeft {
width: 50%;
position: relative;
float: left;
}
div#InnerRight {
width: 50%;
position: relative;
float: right;
}
div#Footer {
clear: both;
}
div#notes {
width: 60%;
margin: 0 auto;
padding-top: 15px;
text-align: left;
}
select {
background: transparent;
margin-top: 15px;
width: 220px;
font-size: 16px;
-webkit-appearance: none;
border: 0px;
height: 34px;
}
</style>
</head>
<body>
<div id="Container">
<img src="images/header.png">
<div id="InnerLeft">
<img src="images/uno.png"><br>
<select id="p1" onchange="change('p1','rpsleft')">
<option value=0>Choose your weapon</option>
<option value=1>Rock</option>
<option value=2>Paper</option>
<option value=3>Scissors</option>
</select>
<p><img src="images/rpsL.png" id="rpsleft"></p>
</div>
<div id="InnerRight">
<img src="images/dos.png"><br>
<select id="p2" onchange="change('p2','rpsright')">
<option value=0>Choose your weapon</option>
<option value=1>Rock</option>
<option value=2>Paper</option>
<option value=3>Scissors</option>
</select>
<p><img src="images/rps.png" id="rpsright"></p>
</div>
<div id="Footer">
<img src="images/andale.png" id="andale" onclick="rps(document.getElementById('p1').value,document.getElementById('p2').value)"
onMouseOver="document.getElementById('andale').src='images/andale2.png'"
onMouseOut="document.getElementById('andale').src='images/andale.png'">
</div>
</div>
</body>
Javascript
// JavaScript Document
function reset() {
document.getElementById('p1').value = 0;
document.getElementById('p2').value = 0;
document.getElementById('rpsleft').src="images/rpsL.png"
document.getElementById('rpsright').src="images/rps.png"
return;
}
function change(player,image) {
var icon = document.getElementById(player).value;
image = document.getElementById(image)
switch (parseInt(icon)) {
case 1:
if (player == 'p1')
image.src="images/rockL.png";
else
image.src="images/rock.png";
break;
case 2:
if (player == 'p1')
image.src="images/paperL.png";
else
image.src="images/paper.png";
break;
case 3:
if (player == 'p1')
image.src="images/scissorsL.png";
else
image.src="images/scissors.png";
break;
}
return;
}
function getValue(player) {
var rand = player;
if (rand == 0) {
rand = Math.floor(Math.random()*3) + 1;
}
return rand;
}
function rps(player1,player2) {
var p1 = getValue(player1);
var p2 = getValue(player2);
document.getElementById('p1').value = p1;
document.getElementById('p2').value = p2;
change('p1','rpsleft');
change('p2','rpsright');
if (p1 == p2) {
alert("It's a tie!");
reset();
return;
}
var sum = parseInt(p1) + parseInt(p2);
var winner;
switch(sum) {
case 3:
(p1 == 2) ? winner = '1' : winner = '2';
break;
case 4:
(p1 == 1) ? winner = '1' : winner = '2';
break;
case 5:
(p1 == 3) ? winner = '1' : winner = '2';
break;
default:
alert("There was an error");
}
alert("Player " + winner + " is the winner");
reset();
return;
}
谢谢!