用Javascript生成六张随机卡片
Generating six random cards with Javascript
我正试图使用javascript中的Math.random()从一副52张牌中随机获得六张牌。到目前为止,我的照片都没有出现。我所有的css3和javascript都嵌入到我的html5代码中。此外,我所有的图片都是gif图片。您可能会注意到,在html5代码中,die1是blank.gif,而evrything else是blank.png。我的set image函数应该会更改src,所以我认为这应该无关紧要。我的代码如下,感谢您的帮助:
<!DOCTYPE html>
<html>
<head>
<meta charset = "utf-8">
<title>Card Trick</title>
<style type="text/css">
.table{
position:relative;
top:50px;
left:50px;
width:1700px;
height:800px;
background-color:crimson;
}
.key{
position:absolute;
top:15px;
left:50px;
}
.startButton{
width:50px;
height:50px;
background-color:black;
color:white;
}
.card{
position:absolute;
top:250px;
left:250px;
width:20px;
height:20px;
}
</style>
<script type="text/javascript">
var card1Image;
var card2Image;
var card3Image;
var card4Image;
var card5Image;
var card6Image;
function start(){
var button = document.getElementById("startButton");
button.addEventListener("click", pickCards, false);
card1Image = document.getElementById("card1");
card2Image = document.getElementById("card2");
card3Image = document.getElementById("card3");
card4Image = document.getElementById("card4");
card5Image = document.getElementById("card5");
card6Image = document.getElementById("card6");
}
function pickCards(){
setImage(card1Image);
setImage(card2Image);
setImage(card3Image);
setImage(card4Image);
setImage(card5Image);
setImage(card6Image);
}
function setImage(cardImg){
var cardValue = Math.floor(1 + Math.random() * 52);
cardImg.setAttribute("src", "C:/Users/Robert/Desktop/cards/" + cardValue + ".gif");
}
window.addEventListener("load", start, false);
</script>
</head>
<body>
<div class = "table"></div>
<div class = "key">
<form action = "#">
<p><input type = "button" class = "startButton" value = "start"></p>
</form>
</div>
<div class = "card">
<p><img id = "card1" src = "blank.gif">
<img id = "card2" src = "blank.png">
<img id = "card3" src = "blank.png">
<img id = "card4" src = "blank.png">
<img id = "card5" src = "blank.png">
<img id = "card6" src = "blank.png"></p>
</div>
</body>
</html>
您忘记将按钮的id设置为startButton
。在当前代码中,您试图通过id获取按钮,但该按钮没有id,而是具有值为startButton
的class属性。
您可以将按钮的class
属性更改为id
属性以解决问题:
<p><input id="startButton" type = "button" value = "start"></p>
当您想从硬盘访问数据时,需要使用file://
URL作为图像源。
cardImg.setAttribute("src", "file://C:/Users/Robert/Desktop/cards/" + cardValue + ".gif");
或者更好地设置一个类似examplep的webstack并使用它开发应用程序。
相关文章:
- $(document).height()在刷新时随机化值(Safari 5.1.10)
- 使用当前日期生成随机id
- 显示某个用户ID的某个标签的30张Instagram图片
- 从a-z中随机选择一个字母
- 显示所选随机颜色的十六进制
- 引导程序3转盘-随机选择下一张幻灯片
- Javascript-获取一张用户的随机个人资料图片'的朋友在脸书上
- 随机六色与JavaScript
- 用Javascript生成六张随机卡片
- 将随机字符串转换为十六进制颜色
- 正在将随机十六进制字符插入到web源代码中
- 如何为jssor滑块随机选择几张幻灯片并隐藏其余幻灯片
- Javascript幻灯片与随机的第一张图片
- 生成一个随机的种子十六进制颜色
- JS匹配游戏随机化除最后一张牌以外的所有牌
- 生成一个以32为基数的随机六位数字符串
- 随机化幻灯片上的第一张图片
- Javascript 数组 - 如何选择一个随机十六进制值
- 随机十六进制生成器(只有灰色)
- 我如何使用算法随机生成一张“地图”?使用预设图像