- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我希望 id=die
首先加载,然后点击“click me”按钮加载 CSS 中设计的指定类,如 'die1' 'die2' 等等
function roll() {
var die = Math.floor(Math.random() * 6);
if (die == 1)
$('#die').addClass('die1');
else if (die == 2)
$('#die').addClass('die2');
else if (die == 3)
$('#die').addClass('die3');
else if (die == 4)
$('#die').addClass('die4');
else if (die == 5)
$('#die').addClass('die5');
else
$('#die').addClass('die6');
}
#die {
width: 300px;
border: 5px solid black;
padding: 25px;
margin: 25px;
}
.die1 {
width: 300px;
border: 5px solid green;
padding: 25px;
margin: 25px;
}
.die2 {
width: 300px;
border: 5px solid pink;
padding: 25px;
margin: 25px;
}
.die3 {
width: 300px;
border: 5px solid violet;
padding: 25px;
margin: 25px;
}
.die4 {
width: 300px;
border: 5px solid yellow;
padding: 25px;
margin: 25px;
}
.die5 {
width: 300px;
border: 5px solid red;
padding: 25px;
margin: 25px;
}
.die6 {
width: 300px;
border: 5px solid blue;
padding: 25px;
margin: 25px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="die"></div>
<button onclick="roll()">Click me!</button>
不知道为什么不调用需要的类?当我尝试在 js 中打印变量“die”时,它工作正常。
最佳答案
您的 CSS 规则应该更具体,因为标识符比类更具体,例如:
#die.die1 {
#die.die2 {
...
那么你的 JS 函数可能就像这样:
$('#die').removeAttr('class').addClass('die' + die);
删除之前的类并添加新的类。
注意:您可能需要将最小值作为 1
添加到随机数中,因为您没有 die0
类:
var die = Math.floor(Math.random() * 6) + 1;
function roll() {
var die = Math.floor(Math.random() * 6) + 1;
$('#die').removeAttr('class').addClass('die' + die);
}
#die {
width: 300px;
border: 5px solid black;
padding: 25px;
margin: 25px;
}
#die.die1 {
width: 300px;
border: 5px solid green;
padding: 25px;
margin: 25px;
}
#die.die2 {
width: 300px;
border: 5px solid pink;
padding: 25px;
margin: 25px;
}
#die.die3 {
width: 300px;
border: 5px solid violet;
padding: 25px;
margin: 25px;
}
#die.die4 {
width: 300px;
border: 5px solid yellow;
padding: 25px;
margin: 25px;
}
#die.die5 {
width: 300px;
border: 5px solid red;
padding: 25px;
margin: 25px;
}
#die.die6 {
width: 300px;
border: 5px solid blue;
padding: 25px;
margin: 25px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="die"></div>
<button onclick="roll()">Click me!</button>
如果你想避免所有这些类,你可以从 JS 代码中更改 border-color
,例如:
function roll() {
var colors = ["green", "pink", "violet", "yellow", "red", "blue"];
var die = Math.floor(Math.random() * colors.length);
$('#die').css('border-color', colors[die]).addClass('die' + die);
}
#die {
width: 300px;
border: 5px solid black;
padding: 25px;
margin: 25px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="die"></div>
<button onclick="roll()">Click me!</button>
关于javascript - 使用 .addclass 函数制作骰子滚筒不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52533604/
我刚刚向自己介绍了 WebGL 和 Threejs,作为开始,我正在尝试创建一个 3D 骰子。我已经到了创建立方体的地步,但我真的不知道如何在立方体的面上放置数字,我能找到的只是如何更改颜色。我已经查
这就是我现在得到的...... var max = 7; var min = 1; $('#dice').click(function() { random = Math.floor(Math.r
我是 Unity 的新手,一直在尝试掷骰子。我遇到了一组教程,它们允许我创建一个 3d 模具(模具使用 Rigidbody 和 Mesh Collider)并编写脚本使其在空格键上滚动,如下所示: 骰
我是 JavaScript 新手,我需要一些想法/帮助来了解如何使我的脚本正常工作。所以我们的想法是,你掷两个骰子,通过按下“掷骰子”按钮然后按下重置按钮来重置整个 HTML 中的所有内容。 所以事情
我正在尝试构建一个掷骰子游戏,如果计算机自动掷出一对骰子,并且如果 cpu 掷出 7 或 11,则用户获胜。然而,如果用户掷出 2、3 或 12,他们将自动失败。如果用户滚动任何其他数字(4、5、6、
背景 如此处所述http://www.ericharshbarger.org/dice/#gofirst_4d12 , “先走”骰子是一组四个骰子,每个都有唯一的编号,因此: 任何两个或更多骰子都不会
我是一名优秀的程序员,十分优秀!